diff --git a/.github/workflows/_deploy-native.yml b/.github/workflows/_deploy-native.yml index ba48d90e..6c1703cf 100644 --- a/.github/workflows/_deploy-native.yml +++ b/.github/workflows/_deploy-native.yml @@ -3,10 +3,6 @@ name: deploy-native-template on: workflow_call: inputs: - target_branch: - required: false - type: string - default: '' ecr_repository: required: true type: string @@ -34,8 +30,6 @@ jobs: steps: - name: Checkout uses: actions/checkout@v4 - with: - ref: ${{ inputs.target_branch || github.ref }} - name: Configure AWS credentials uses: aws-actions/configure-aws-credentials@v4 diff --git a/.github/workflows/_deploy.yml b/.github/workflows/_deploy.yml index e313cc36..976cb448 100644 --- a/.github/workflows/_deploy.yml +++ b/.github/workflows/_deploy.yml @@ -3,10 +3,6 @@ name: deploy-template on: workflow_call: inputs: - target_branch: - required: false - type: string - default: '' ecr_repository: required: true type: string @@ -34,8 +30,6 @@ jobs: steps: - name: Checkout uses: actions/checkout@v4 - with: - ref: ${{ inputs.target_branch || github.ref }} - name: Configure AWS credentials uses: aws-actions/configure-aws-credentials@v4 diff --git a/.github/workflows/deploy-manual-native.yml b/.github/workflows/deploy-manual-native.yml index 0b1fe105..f8881e92 100644 --- a/.github/workflows/deploy-manual-native.yml +++ b/.github/workflows/deploy-manual-native.yml @@ -3,10 +3,6 @@ name: Deploy Manual Native on: workflow_dispatch: inputs: - target_branch: - description: '배포할 브랜치명' - required: true - type: string ecr_repository: description: 'ECR 리포지토리 (예: snutt-dev/snutt-timetable)' required: true @@ -20,7 +16,6 @@ jobs: deploy: uses: ./.github/workflows/_deploy-native.yml with: - target_branch: ${{ inputs.target_branch }} ecr_repository: ${{ inputs.ecr_repository }} dockerfile: ${{ inputs.dockerfile }} secrets: diff --git a/.github/workflows/deploy-manual.yml b/.github/workflows/deploy-manual.yml index 3fd63b42..f1a7fa69 100644 --- a/.github/workflows/deploy-manual.yml +++ b/.github/workflows/deploy-manual.yml @@ -3,10 +3,6 @@ name: Deploy Manual on: workflow_dispatch: inputs: - target_branch: - description: '배포할 브랜치명' - required: true - type: string ecr_repository: description: 'ECR 리포지토리 (예: snutt-dev/snutt-timetable)' required: true @@ -20,7 +16,6 @@ jobs: deploy: uses: ./.github/workflows/_deploy.yml with: - target_branch: ${{ inputs.target_branch }} ecr_repository: ${{ inputs.ecr_repository }} dockerfile: ${{ inputs.dockerfile }} secrets: diff --git a/api/src/main/kotlin/controller/AuthController.kt b/api/src/main/kotlin/controller/AuthController.kt index 3457da54..a8b19083 100644 --- a/api/src/main/kotlin/controller/AuthController.kt +++ b/api/src/main/kotlin/controller/AuthController.kt @@ -2,6 +2,7 @@ package com.wafflestudio.snutt.controller import com.wafflestudio.snutt.common.dto.OkResponse import com.wafflestudio.snutt.config.CurrentUser +import com.wafflestudio.snutt.filter.SnuttDefaultApiFilterTarget import com.wafflestudio.snutt.filter.SnuttNoAuthApiFilterTarget import com.wafflestudio.snutt.users.data.User import com.wafflestudio.snutt.users.dto.EmailResponse @@ -108,6 +109,7 @@ class AuthController( return OkResponse() } + @SnuttDefaultApiFilterTarget @PostMapping("/logout") suspend fun logout( @CurrentUser user: User, diff --git a/core/build.gradle.kts b/core/build.gradle.kts index 07973bf3..f15bcb69 100644 --- a/core/build.gradle.kts +++ b/core/build.gradle.kts @@ -13,12 +13,6 @@ dependencies { api("org.jetbrains.kotlinx:kotlinx-coroutines-jdk8") api("org.springframework.boot:spring-boot-starter-data-mongodb-reactive") - // TODO: https://jira.mongodb.org/browse/JAVA-6038 이슈 해결된 spring-boot-starter-data-mongodb 업그레이드 후 아래 의존성 삭제 - api("org.mongodb:mongodb-driver-sync:5.5.2") - api("org.mongodb:bson:5.5.2") - api("org.mongodb:mongodb-driver-core:5.5.2") - api("org.mongodb:bson-record-codec:5.5.2") - api("org.springframework.boot:spring-boot-starter-data-redis") implementation("org.springframework.security:spring-security-crypto") diff --git a/core/src/main/kotlin/auth/kakao/KakaoOAuth2UserResponse.kt b/core/src/main/kotlin/auth/kakao/KakaoOAuth2UserResponse.kt index 75e2bd0f..c032b981 100644 --- a/core/src/main/kotlin/auth/kakao/KakaoOAuth2UserResponse.kt +++ b/core/src/main/kotlin/auth/kakao/KakaoOAuth2UserResponse.kt @@ -1,16 +1,15 @@ package com.wafflestudio.snutt.auth.kakao -import tools.jackson.databind.PropertyNamingStrategies -import tools.jackson.databind.annotation.JsonNaming +import com.fasterxml.jackson.annotation.JsonProperty -@JsonNaming(PropertyNamingStrategies.SnakeCaseStrategy::class) data class KakaoOAuth2UserResponse( val id: Long, + @param:JsonProperty("kakao_account") val kakaoAccount: KakaoAccountDto, ) -@JsonNaming(PropertyNamingStrategies.SnakeCaseStrategy::class) data class KakaoAccountDto( val email: String, + @param:JsonProperty("is_email_verified") val isEmailVerified: Boolean, ) diff --git a/core/src/main/kotlin/bookmark/dto/BookmarkLectureModifyRequest.kt b/core/src/main/kotlin/bookmark/dto/BookmarkLectureModifyRequest.kt index 530fd008..9d99cb8c 100644 --- a/core/src/main/kotlin/bookmark/dto/BookmarkLectureModifyRequest.kt +++ b/core/src/main/kotlin/bookmark/dto/BookmarkLectureModifyRequest.kt @@ -1,9 +1,8 @@ package com.wafflestudio.snutt.bookmark.dto -import tools.jackson.databind.PropertyNamingStrategies -import tools.jackson.databind.annotation.JsonNaming +import com.fasterxml.jackson.annotation.JsonProperty -@JsonNaming(PropertyNamingStrategies.SnakeCaseStrategy::class) data class BookmarkLectureModifyRequest( + @param:JsonProperty("lecture_id") val lectureId: String, ) diff --git a/core/src/main/kotlin/users/dto/FacebookLoginRequest.kt b/core/src/main/kotlin/users/dto/FacebookLoginRequest.kt index cebf03bb..6fdf5373 100644 --- a/core/src/main/kotlin/users/dto/FacebookLoginRequest.kt +++ b/core/src/main/kotlin/users/dto/FacebookLoginRequest.kt @@ -1,10 +1,10 @@ package com.wafflestudio.snutt.users.dto -import tools.jackson.databind.PropertyNamingStrategies -import tools.jackson.databind.annotation.JsonNaming +import com.fasterxml.jackson.annotation.JsonProperty -@JsonNaming(PropertyNamingStrategies.SnakeCaseStrategy::class) data class FacebookLoginRequest( + @param:JsonProperty("fb_id") val fbId: String?, + @param:JsonProperty("fb_token") val fbToken: String, ) diff --git a/core/src/main/kotlin/users/dto/LoginResponse.kt b/core/src/main/kotlin/users/dto/LoginResponse.kt index ea5702e3..f5d86028 100644 --- a/core/src/main/kotlin/users/dto/LoginResponse.kt +++ b/core/src/main/kotlin/users/dto/LoginResponse.kt @@ -1,10 +1,9 @@ package com.wafflestudio.snutt.users.dto -import tools.jackson.databind.PropertyNamingStrategies -import tools.jackson.databind.annotation.JsonNaming +import com.fasterxml.jackson.annotation.JsonProperty -@JsonNaming(PropertyNamingStrategies.SnakeCaseStrategy::class) data class LoginResponse( + @param:JsonProperty("user_id") val userId: String, val token: String, val message: String = "ok", diff --git a/core/src/main/kotlin/users/dto/LogoutRequest.kt b/core/src/main/kotlin/users/dto/LogoutRequest.kt index d3c7fe33..7ebb0eb4 100644 --- a/core/src/main/kotlin/users/dto/LogoutRequest.kt +++ b/core/src/main/kotlin/users/dto/LogoutRequest.kt @@ -1,9 +1,8 @@ package com.wafflestudio.snutt.users.dto -import tools.jackson.databind.PropertyNamingStrategies -import tools.jackson.databind.annotation.JsonNaming +import com.fasterxml.jackson.annotation.JsonProperty -@JsonNaming(PropertyNamingStrategies.SnakeCaseStrategy::class) data class LogoutRequest( + @param:JsonProperty("registration_id") val registrationId: String, ) diff --git a/core/src/main/kotlin/users/dto/PasswordChangeRequest.kt b/core/src/main/kotlin/users/dto/PasswordChangeRequest.kt index 09063814..06032406 100644 --- a/core/src/main/kotlin/users/dto/PasswordChangeRequest.kt +++ b/core/src/main/kotlin/users/dto/PasswordChangeRequest.kt @@ -1,10 +1,10 @@ package com.wafflestudio.snutt.users.dto -import tools.jackson.databind.PropertyNamingStrategies -import tools.jackson.databind.annotation.JsonNaming +import com.fasterxml.jackson.annotation.JsonProperty -@JsonNaming(PropertyNamingStrategies.SnakeCaseStrategy::class) data class PasswordChangeRequest( + @param:JsonProperty("old_password") val oldPassword: String, + @param:JsonProperty("new_password") val newPassword: String, ) diff --git a/core/src/main/kotlin/users/dto/PasswordResetRequest.kt b/core/src/main/kotlin/users/dto/PasswordResetRequest.kt index 3cc02b60..094e8dee 100644 --- a/core/src/main/kotlin/users/dto/PasswordResetRequest.kt +++ b/core/src/main/kotlin/users/dto/PasswordResetRequest.kt @@ -1,10 +1,9 @@ package com.wafflestudio.snutt.users.dto -import tools.jackson.databind.PropertyNamingStrategies -import tools.jackson.databind.annotation.JsonNaming +import com.fasterxml.jackson.annotation.JsonProperty -@JsonNaming(PropertyNamingStrategies.SnakeCaseStrategy::class) data class PasswordResetRequest( + @param:JsonProperty("user_id") val userId: String, val password: String, val code: String,