diff --git a/.github/workflows/aks-qa-deploy.yaml b/.github/workflows/aks-qa-deploy.yaml index 47f68e6..e17f819 100644 --- a/.github/workflows/aks-qa-deploy.yaml +++ b/.github/workflows/aks-qa-deploy.yaml @@ -61,4 +61,4 @@ jobs: uses: rtCamp/action-slack-notify@v2 env: SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK }} - SLACK_MESSAGE: ${{ github.repository }}가 ${{ env.NAMESPACE }} 환경에 배포되었습니다 🚀 \ No newline at end of file + SLACK_MESSAGE: ${{ github.repository }}가 ${{ env.NAMESPACE }} 환경에 배포되었습니다 🚀 diff --git a/.github/workflows/aks-test-deploy.yaml b/.github/workflows/aks-test-deploy.yaml index 144f057..8f04411 100644 --- a/.github/workflows/aks-test-deploy.yaml +++ b/.github/workflows/aks-test-deploy.yaml @@ -63,4 +63,4 @@ jobs: uses: rtCamp/action-slack-notify@v2 env: SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK }} - SLACK_MESSAGE: ${{ github.repository }}가 ${{ env.NAMESPACE }} 환경에 배포되었습니다 🚀 \ No newline at end of file + SLACK_MESSAGE: ${{ github.repository }}가 ${{ env.NAMESPACE }} 환경에 배포되었습니다 🚀 diff --git a/docs/docs.go b/docs/docs.go index 04eacfb..55a6386 100644 --- a/docs/docs.go +++ b/docs/docs.go @@ -623,8 +623,12 @@ var doc = `{ "nickName": { "type": "string" }, + "profileImageUrl": { + "description": "카카오톡에 실제로 저장된 프로필 사진 (고화질), 이미지의 url을 저장하기 위한 최대 크기로 잡아놓았습니다.", + "type": "string" + }, "thumbnailImageUrl": { - "description": "이미지의 url을 저장하기 위한 최대 크기로 잡아놓았습니다.", + "description": "카카오톡에 저장된 프로필 사진 미리보기 (저화질), 이미지의 url을 저장하기 위한 최대 크기로 잡아놓았습니다.", "type": "string" } } diff --git a/docs/swagger.json b/docs/swagger.json index f402c3d..6d86c40 100644 --- a/docs/swagger.json +++ b/docs/swagger.json @@ -603,8 +603,12 @@ "nickName": { "type": "string" }, + "profileImageUrl": { + "description": "카카오톡에 실제로 저장된 프로필 사진 (고화질), 이미지의 url을 저장하기 위한 최대 크기로 잡아놓았습니다.", + "type": "string" + }, "thumbnailImageUrl": { - "description": "이미지의 url을 저장하기 위한 최대 크기로 잡아놓았습니다.", + "description": "카카오톡에 저장된 프로필 사진 미리보기 (저화질), 이미지의 url을 저장하기 위한 최대 크기로 잡아놓았습니다.", "type": "string" } } diff --git a/docs/swagger.yaml b/docs/swagger.yaml index d45bb1b..2ca442a 100644 --- a/docs/swagger.yaml +++ b/docs/swagger.yaml @@ -7,8 +7,11 @@ definitions: type: integer nickName: type: string + profileImageUrl: + description: 카카오톡에 실제로 저장된 프로필 사진 (고화질), 이미지의 url을 저장하기 위한 최대 크기로 잡아놓았습니다. + type: string thumbnailImageUrl: - description: 이미지의 url을 저장하기 위한 최대 크기로 잡아놓았습니다. + description: 카카오톡에 저장된 프로필 사진 미리보기 (저화질), 이미지의 url을 저장하기 위한 최대 크기로 잡아놓았습니다. type: string type: object entitys.User: diff --git a/internal/app/entitys/kakao-talk-social.go b/internal/app/entitys/kakao-talk-social.go index 365fcbe..1621a04 100644 --- a/internal/app/entitys/kakao-talk-social.go +++ b/internal/app/entitys/kakao-talk-social.go @@ -4,5 +4,6 @@ type KakaoTalkSocial struct { Id uint `gorm:"primary_key;" json:"id"` Email string `gorm:"unique;not null;size:50;" json:"email"` NickName string `gorm:"not null;size:20;" json:"nickName"` - ThumbnailImageUrl string `gorm:"size:2083;" json:"thumbnailImageUrl"` // 이미지의 url을 저장하기 위한 최대 크기로 잡아놓았습니다. + ProfileImageUrl string `gorm:"size:2083;" json:"profileImageUrl"` // 카카오톡에 실제로 저장된 프로필 사진 (고화질), 이미지의 url을 저장하기 위한 최대 크기로 잡아놓았습니다. + ThumbnailImageUrl string `gorm:"size:2083;" json:"thumbnailImageUrl"` // 카카오톡에 저장된 프로필 사진 미리보기 (저화질), 이미지의 url을 저장하기 위한 최대 크기로 잡아놓았습니다. } diff --git a/internal/app/handlers/users.go b/internal/app/handlers/users.go index 99490a0..bdc3691 100644 --- a/internal/app/handlers/users.go +++ b/internal/app/handlers/users.go @@ -193,6 +193,7 @@ func UserKakaoLoginCallBack(c *gin.Context) { Id: kakaoUserInformation.Id, Email: kakaoUserInformation.KakaoAccount.Email, NickName: kakaoUserInformation.KakaoAccount.Profile.Nickname, + ProfileImageUrl: kakaoUserInformation.KakaoAccount.Profile.ProfileImageUrl, ThumbnailImageUrl: kakaoUserInformation.KakaoAccount.Profile.ThumbnailImageUrl, } if err := orm.Client.Create(&kakaoTalkSocial).Error; err != nil { @@ -203,7 +204,7 @@ func UserKakaoLoginCallBack(c *gin.Context) { } // kakao 프로필 사진 바이너리로 전환 - url := kakaoTalkSocial.ThumbnailImageUrl + url := kakaoTalkSocial.ProfileImageUrl res, err := http.Get(url) if err != nil { c.JSON(http.StatusInternalServerError, models.ErrResponse{ diff --git a/internal/app/models/kakao-user-information.go b/internal/app/models/kakao-user-information.go index 2d3c775..7a71ea5 100644 --- a/internal/app/models/kakao-user-information.go +++ b/internal/app/models/kakao-user-information.go @@ -11,6 +11,7 @@ type kakaoAccount struct { Profile profile `json:"profile"` } +// 프로필 사진의 경우 kakao_account.profile 과 properties 2곳에서 조회가 가능한데 가장 fresh한 데이터는 kakao_account.profile 에 존재합니다. properties 에서 프로필 사진 사용시 이전 프로필 사진이 사용될 수 있습니다. type profile struct { Nickname string `json:"nickname"` ProfileImageUrl string `json:"profile_image_url"` diff --git a/internal/pkg/project/project.go b/internal/pkg/project/project.go index 35222a8..2f9220f 100644 --- a/internal/pkg/project/project.go +++ b/internal/pkg/project/project.go @@ -2,5 +2,5 @@ package project const ( AppName string = "oauth-server" - AppVersion string = "1.0.0" + AppVersion string = "1.1.0" ) diff --git a/k8s/prod.yaml b/k8s/prod.yaml index 8d8d5a1..b0e5b23 100644 --- a/k8s/prod.yaml +++ b/k8s/prod.yaml @@ -32,7 +32,7 @@ spec: cpu: 5m memory: 100Mi limits: - cpu: 5m + cpu: 100m memory: 100Mi env: - name: STAGES diff --git a/k8s/qa.yaml b/k8s/qa.yaml index 2f49787..2579a2c 100644 --- a/k8s/qa.yaml +++ b/k8s/qa.yaml @@ -32,7 +32,7 @@ spec: cpu: 5m memory: 100Mi limits: - cpu: 5m + cpu: 100m memory: 100Mi env: - name: STAGES