-
Notifications
You must be signed in to change notification settings - Fork 5
Refactor/s3 prefix separation #132
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. Weโll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
2c071ac to
b027943
Compare
EpicFn
added a commit
that referenced
this pull request
Oct 13, 2025
* [feat/OPS-262] GlobalExceptionHandler ์ค์ (#8) * feat: GlobalExceptionHandler ์งํ ์ฌํญ ์ ์ฅ. * feat/OPS-262 : GlobalExceptionHandler ์์ฑ ์๋ฃ. * [feat/OPS-126] Member ๋๋ฉ์ธ ๊ธฐ์ด ์ค๊ณ (#9) * feat/OPS-127 : Member ์ํฐํฐ ์์ฑ(ํ๋, ์ฐ๊ด ๊ด๊ณ, ์์ฑ์, ๋ฉ์๋) * feat/OPS-128 : MemberRepository ์์ฑ(name, email ๊ฒ์ ์ต์ ์ถ๊ฐ) * feat: GlobalExceptionHandler ์์ฑ์ ์ํ ์งํ ์ฌํญ ์ ์ฅ. * feat/OPS-129 : MemberService ์์ฑ(์กฐํ, ์์ฑ/์์ , ์ญ์ ) * feat/OPS-126 : Member ๋๋ฉ์ธ ์ค๊ณ ์๋ฃ. Service ํ ์คํธ ์ฝ๋ ์ถ๊ฐ * [Chore/OPS-264] ci ์ํฌํ๋ก์ฐ ๊ฐ์ (#10) * chore/OPS-264 : ci.yml ์์ * Update .github/workflows/ci.yml Co-authored-by: Copilot <[email protected]> * Update .github/workflows/ci.yml Co-authored-by: Copilot <[email protected]> --------- Co-authored-by: Copilot <[email protected]> * Update .gitignore to exclude IntelliJ files (#11) Add .idea/ to .gitignore to exclude IntelliJ project files * feat/OPS-134 : ApiV1Controller ์์ฑ ์๋ฃ. (#12) * [chore/OPS-268] CI ์ํฌํ๋ก์ฐ ๊ฐ์ #2 (#15) ํ์ฌ ์์ ๋ก๊ทธ์ธ์ ์ฌ์ฉํ๋ ํน์ ๋ฏผ๊ฐํ ๊ฐ(JWT ํ ํฐ, ์์ client_id ๋ฑ)์ @value ์ด๋ ธํ ์ด์ ์ ํตํด ๋ฐ์์ค๊ณ ์์ต๋๋ค. ํ์ง๋ง ํด๋น ๋ฏผ๊ฐํ ๊ฐ์ ์ ์ฅํ yaml ํ์ผ์ ๋ ํฌ์งํ ๋ฆฌ์ ๋ฐ๋ก ์ฌ๋ฆด ์ ์๊ธฐ์, ๋ ํฌ์งํ ๋ฆฌ์ secrets์ ํด๋น ๊ฐ๋ค์ ์ ์ฅํด๋๊ณ , CI ์ํฌํ๋ก์ฐ์ ์ด ๊ฐ๋ค์ ์ฌ์ฉํด์ application-secrets.yml ํ์ผ์ ์์ฑํ๋ ๋ก์ง์ ์ถ๊ฐํ์ต๋๋ค. * [feat/OPS-155] ์์ ๋ก๊ทธ์ธ ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ(์นด์นด์ค) (#18) * feat/OPS-155 : ์์ ๋ก๊ทธ์ธ/ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ (์นด์นด์ค) ์๋ฃ. ์์ ์ฌํญ ๋ฐ์. * feat/OPS-155 : ์์ ๋ก๊ทธ์ธ/ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ (์นด์นด์ค) ์๋ฃ. ์์ ์ฌํญ ๋ฐ์ #2. * feat/OPS-155 : ์์ ๋ก๊ทธ์ธ/ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ (์นด์นด์ค) ์๋ฃ. ์์ ์ฌํญ ๋ฐ์ #3. * [chore/ops-130] Terraform์ ํ์ฉํด EC2 ์ธ์คํด์ค ์์ฑ ๋ฐ ์ค์ (#17) * chore/OPS-266 : EC2 ์ธ์คํด์ค ์์ฑ * chore/OPS-267 : VPC, IAM, SG ์ค์ * chore : ์๋ธ๋ท ์ค์ ์์ ๋ฐ nginx, mysql ๋ณผ๋ฅจ ๋ง์ดํธ ์ค์ ์ถ๊ฐ * chore : Dockerfile ์์ ๋ฐ EC2 ๋ณด์ ๊ทธ๋ฃน ์์ * chore : MYSQL ์ปจํ ์ด๋ ์คํ์ ์ด๊ธฐ DB ์ด๋ฆ ์ง์ ํ๋๋ก ์ค์ * fix/OPS-271 : SecurityConfig ๋ฐ Jwt ์ธ์ฆ ํํฐ ์์ (#19) * Feat/ops 209 be feat ํด๋ ์์ฑ (#21) * refactor: archive_id + name ๋ณตํฉ ์ ๋ํฌ ์ ์ฝ ์ถ๊ฐ * refactor: folder_id + title ๋ณตํฉ ์ ๋ํฌ ์ ์ฝ ์ถ๊ฐ * refactor: member_id, archive_id ๋จ์ผ ์ ๋ํฌ ์ ์ฝ ์ถ๊ฐ * refactor: ์ํฐํฐ ์ ์ฝ * feat/OPS-209-BE-feat-ํด๋-์์ฑ ์๋ฃ * feat/OPS-209-BE-feat-ํด๋-์์ฑ ์๋ฃ * fix : ์ปจ๋ฒค์ ํต์ผ (#22) Co-authored-by: EpicFn <[email protected]> * Feat/ops 210 be feat ํด๋ ์ญ์ (#23) * feat/OPS-210 : ํด๋ ์ญ์ ๊ตฌํ * [feat/OPS-151] llm ํ์ฉ ๋ฐ์ดํฐ ์ ์ ํ ๊ธฐ๋ฅ ๊ตฌํ (#27) - groq api๋ฅผ ์ด์ฉํ์ฌ ์์ฝ, ํ๊ทธ ์ถ์ถ ๊ธฐ๋ฅ ๊ตฌํ * [feat/OPS-158] ์์ ๋ก๊ทธ์ธ ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ(๊ตฌ๊ธ) (#28) * feat/OPS-158 : ์์ ๋ก๊ทธ์ธ(๊ตฌ๊ธ) ๊ตฌํ, JWT, Member, Auth ๋๋ฉ์ธ ๊ณ ๋ํ * feat/OPS-158 : ํ ์คํธ ์ผ์ด์ค ์์ . * fix/OPS-158 : template ์ถฉ๋ ํด๊ฒฐ. * fix/OPS-158 : @transactional import ์์ * feat/OPS-211 : ํด๋ ์ด๋ฆ ๋ณ๊ฒฝ ๊ตฌํ (#25) * feat/OPS-211 : ํด๋ ์ด๋ฆ ๋ณ๊ฒฝ ๊ตฌํ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * [chore/OPS-187] Terraform์ ํ์ฉํด RDS ์ธ์คํด์ค ์์ฑ ๋ฐ ์ค์ (#29) * chore/OPS-187 : Terraform์ ํ์ฉํด RDS ์ธ์คํด์ค ์์ฑ ๋ฐ ์ค์น * chore : RDS ์๋ธ๋ท ๊ทธ๋ฃน private์ผ๋ก ์์ * chore : AWS ๋ฆฌ์์ค ๋ค์ด๋ฐ ๊ท์น ์ ์ฉ * [feat] ์คํ์ด์ค ๋ฐ์ดํฐ ๊ด๋ฆฌ (#32) * new/OPS-222 : space controller, sevice, repository ๋น ์์ฑ # Conflicts: # src/main/java/org/tuna/zoopzoop/backend/global/initData/BaseInitData.java * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ์๋ํฌ์ธํธ ์ถ๊ฐ * new/OPS-222 : spaceControllerTest ํ์ผ ์ธํ * refactor/OPS-222 : ํ ์คํธ ํด๋์ค์ ๊ณต์ฉ ํํธ ์ถ์ ํด๋์ค๋ก ๋ถ๋ฆฌ * fix : ์ต์ ์ฌํญ ๋ฐ์ * fix/OPS-222 : ํ ์คํธ ์ฝ๋์์ ํ์ ๋ค๋ฅด๋ ๊ฑฐ ์์ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๊ตฌํ * feat/OPS-222 : space ๋จ์ ํธ๋ค๋ฌ, ์ปค์คํ ์๋ฌ ์์ฑ * fix/OPS-222 : controller ์์ฑ ํ ์คํธ ํต๊ณผ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๋ก์ง ์์ฑ * feat/OPS-222 : ์คํ์ด์ค ์ญ์ ๊ตฌํ * fix/OPS-222 : ํ ์คํธ ์ผ์ด์ค ํต๊ณผ * feat/OPS-245 : controller ๋จ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-245 : ์คํ์ด์ค ๋ช ๋ณ๊ฒฝ ๊ตฌํ * fix/OPS-244 : ์ด๋ฆ ๋ณ๊ฒฝ ์ saveAndFlush๋ก ์ฆ์ ๋ฐ์ * chore/OPS-222 : develop ์ต์ ์ฌํญ ๋ฐ์ * fix : ์ ์ฅ * fix/OPS-222 : globalExceptionHandler ์ปจ๋ฒค์ ํต์ผ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ controller ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-244 : membership ๊ด๋ฆฌ ๋น ์์ฑ * feat/OPS-244 : membership ์์ฑ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ฑ * fix : ํ ์คํธ ์ผ์ด์ค ๊ฐ ์ถฉ๋ ํด๊ฒฐ ์ค * fix : ์ต์ ์ฌํญ ๋ฐ์ * ์์์ ์ฅ * ์ด๊ธฐ ์ํ * fix : ๋ฏธ๋ด์ฑ ์ ์ฉ * feat/OPS-244 : ์คํ์ด์ค ๋ฉค๋ฒ ์ถ๊ฐ ๊ธฐ๋ฅ * fix : spaceControllerTest์ memberControllerTest ๊ฐ ์ถฉ๋ ํด๊ฒฐ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * chore/OPS-244 : ์ธ์ฆ ๊ด๋ จ ์ฝ๋ ์ฃผ์ ์ฒ๋ฆฌ * feat/OPS-270 : ์คํ์ด์ค ๋ก์ง์ ์ฌ์ฉ์ ์ ๋ณด ์ฒดํฌ ์ถ๊ฐ * feat/OPS-22 : ํ ์คํธ ์ผ์ด์ค์ WithUserDetails ๋ฐ์ * feat/OPS-222 : ์ธ์ฆ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * fix : ๋ถํ์ํ ์ฃผ์ ์ญ์ * new/OPS-222 : space controller, sevice, repository ๋น ์์ฑ # Conflicts: # src/main/java/org/tuna/zoopzoop/backend/global/initData/BaseInitData.java * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ์๋ํฌ์ธํธ ์ถ๊ฐ * new/OPS-222 : spaceControllerTest ํ์ผ ์ธํ * refactor/OPS-222 : ํ ์คํธ ํด๋์ค์ ๊ณต์ฉ ํํธ ์ถ์ ํด๋์ค๋ก ๋ถ๋ฆฌ * fix : ์ต์ ์ฌํญ ๋ฐ์ * fix/OPS-222 : ํ ์คํธ ์ฝ๋์์ ํ์ ๋ค๋ฅด๋ ๊ฑฐ ์์ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๊ตฌํ * feat/OPS-222 : space ๋จ์ ํธ๋ค๋ฌ, ์ปค์คํ ์๋ฌ ์์ฑ * fix/OPS-222 : controller ์์ฑ ํ ์คํธ ํต๊ณผ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๋ก์ง ์์ฑ * feat/OPS-222 : ์คํ์ด์ค ์ญ์ ๊ตฌํ * fix/OPS-222 : ํ ์คํธ ์ผ์ด์ค ํต๊ณผ * feat/OPS-245 : controller ๋จ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-245 : ์คํ์ด์ค ๋ช ๋ณ๊ฒฝ ๊ตฌํ * fix/OPS-244 : ์ด๋ฆ ๋ณ๊ฒฝ ์ saveAndFlush๋ก ์ฆ์ ๋ฐ์ * chore/OPS-222 : develop ์ต์ ์ฌํญ ๋ฐ์ * fix : ์ ์ฅ * fix/OPS-222 : globalExceptionHandler ์ปจ๋ฒค์ ํต์ผ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ controller ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-244 : membership ๊ด๋ฆฌ ๋น ์์ฑ * feat/OPS-244 : membership ์์ฑ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ฑ * fix : ํ ์คํธ ์ผ์ด์ค ๊ฐ ์ถฉ๋ ํด๊ฒฐ ์ค * fix : ์ต์ ์ฌํญ ๋ฐ์ * ์์์ ์ฅ * ์ด๊ธฐ ์ํ * fix : ๋ฏธ๋ด์ฑ ์ ์ฉ * feat/OPS-244 : ์คํ์ด์ค ๋ฉค๋ฒ ์ถ๊ฐ ๊ธฐ๋ฅ * fix : spaceControllerTest์ memberControllerTest ๊ฐ ์ถฉ๋ ํด๊ฒฐ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * chore/OPS-244 : ์ธ์ฆ ๊ด๋ จ ์ฝ๋ ์ฃผ์ ์ฒ๋ฆฌ * feat/OPS-270 : ์คํ์ด์ค ๋ก์ง์ ์ฌ์ฉ์ ์ ๋ณด ์ฒดํฌ ์ถ๊ฐ * feat/OPS-22 : ํ ์คํธ ์ผ์ด์ค์ WithUserDetails ๋ฐ์ * feat/OPS-222 : ์ธ์ฆ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * fix : ๋ถํ์ํ ์ฃผ์ ์ญ์ * fix : ๋ถํ์ํ ํ์ผ ์ญ์ --------- Co-authored-by: EpicFn <[email protected]> * Ops 272 be feat ์๋ฃ ์ด๋ฆ ์กฐํ (#31) * feat/OPS-211 : ํด๋ ์ด๋ฆ ๋ณ๊ฒฝ ๊ตฌํ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * feat/OPS-272 : ํด๋/ํ์ผ ์กฐํ ๊ตฌํ * refactor/OPS-272 : tag ์์ฑ์ ์ถ๊ฐ * feat/OPS-195 : ๋ด์ค ๋ชฉ๋ก ์กฐํ ๊ธฐ๋ฅ ๊ตฌํ(์ต์ ๋ด์ค, ํค์๋ ๊ธฐ๋ฐ). ์๋น์ค ํ ์คํธ ์ถ๊ฐ. (#33) * refactor/OPS-277 : default ํด๋ ์๋ ์์ฑ (#34) * [chore/OPS-278] Auth, Member, News ๋๋ฉ์ธ ๋ฌธ์ํ ๋ฐ ๊ณ ๋ํ. (#35) * chore/OPS-278 : Auth ๋๋ฉ์ธ ๋ฌธ์ํ ์๋ฃ & ApiV1MemberController ์ถ๊ฐ ๊ธฐ๋ฅ ๊ตฌํ. * refactor/OPS-278 : ApiV1MemberController ์ถ๊ฐ ์ฌํญ์ ๋ง๊ฒ ํ ์คํธ ์ถ๊ฐ ๊ตฌํ. * refactor/OPS-278 : Member ์์ฑ ์, ๋๋คํ UUID์ ์ 5๊ธ์๋ฅผ ํ๊ทธ๋ก ์ฌ์ฉํ๋๋ก ๋ณ๊ฒฝ. * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- Co-authored-by: EpicFn <[email protected]> * refactor/OPS-283 : datasource ์ํฐํฐ ์์ (#39) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * [feat/OPS-175] ์น ํฌ๋กค๋ง ๋ฐ์ดํฐ ์ ์ ํ ๊ธฐ๋ฅ ๊ตฌํ (#41) * feat/OPS-175 : ์น ํฌ๋กค๋ง ๋ฐ์ดํฐ ์ ์ ํ ๊ธฐ๋ฅ ๊ตฌํ * [refactor/OPS-287] News ๋๋ฉ์ธ ๊ณ ๋ํ (#42) * refactor/OPS-287 : newsSearch ๋ฉ์๋ ๋ก์ง ๋ณ๊ฒฝ ๋ฐ ์ผ๋ถ API ๋ฌธ์ํ. * refactor/OPS-287 : NewsServiceTest API๋ฅผ ํธ์ถํ๋ ๋ฐฉ์์ผ๋ก ๋ณ๊ฒฝ. * Ops 226 be feat ์๋ฃ ๋ฑ๋ก (#44) * refactor/OPS-283 : datasource ์ํฐํฐ ์์ * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- Co-authored-by: EpicFn <[email protected]> * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * feat/OPS-226 : ์๋ฃ ๋ฑ๋ก ๊ตฌํ * refactor/OPS-226 : ๋ฉ์๋ ๋ช ์์ --------- Co-authored-by: Hyeok Jin Kim <[email protected]> Co-authored-by: EpicFn <[email protected]> * Ops 215 be feat ์๋ฃ ์ญ์ (#46) * refactor/OPS-283 : datasource ์ํฐํฐ ์์ * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- Co-authored-by: EpicFn <[email protected]> * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * feat/OPS-226 : ์๋ฃ ๋ฑ๋ก ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ --------- Co-authored-by: Hyeok Jin Kim <[email protected]> Co-authored-by: EpicFn <[email protected]> * [feat/OPS-293] LiveBlocks๋ฅผ ์ํ React-flow ๋ฐ์ดํฐ ๊ด๋ฆฌ ๋๋ฉ์ธ ์ค๊ณ ์๋ฃ. ํ ์คํธ ์ถ๊ฐ. (#47) * feat/OPS-293 : LiveBlocks๋ฅผ ์ํ React-flow ๋ฐ์ดํฐ ๊ด๋ฆฌ ๋๋ฉ์ธ ์ค๊ณ ์๋ฃ. ํ ์คํธ ์ถ๊ฐ. * feat/OPS-293 : folder ํ ์คํธ์ @transactional ์ถ๊ฐ. * feat/OPS-293 : MemberServiceTest ์์ #1 * feat/OPS-293 : MemberServiceTest ์์ #2 * feat/OPS-293 : Folder ํ ์คํธ์ ActiveProfile(test) ์ถ๊ฐ. * feat/OPS-293 : ํ ์คํธ์ ๋ฌด๊ฒฐ์ฑ ๊ฒ์ฆ์ ์ํ @afterall, @AfterEach ์ถ๊ฐ. * feat/OPS-293 : ์ผ๋ถ ์์ . * feat/OPS-293 : ์ง์ง ๋ง์ง๋ง ์์ . * [chore/ops-132] CI/CD ํ์ดํ๋ผ์ธ ๊ตฌ์ถ (#43) * chore/OPS-133 : CI ํ์ดํ๋ผ์ธ ๊ตฌ์ถ * chore: ํ ์คํธ/์ด์ ํ๊ฒฝ์ฉ GitHub Actions Terraform ์๋ ์ธํ๋ผ ์ ์ฉ ์ํฌํ๋ก์ฐ ์ถ๊ฐ * chore : ํ๊ฒฝ๋ณ์๋ก test/prod ์๋ฒ ๋ถ๋ฆฌ ๊ฐ๋ฅํ๋๋ก ์ค์ * chore/OPS-135 : CD ์ํฌํ๋ก์ฐ ์ถ๊ฐ * chore: CI ํ CD ์คํ๋๋๋ก ์ค์ * chore : CI ์ํฌํ๋ก์ฐ job ๋ถ๋ฆฌ(ํ ์คํธ,๋น๋/๋์ปค ๋น๋,ghcr push) * chore : docker build jobs์์ checkout ๋จ๊ณ ์ถ๊ฐ * chore: CI ์ํฌํ๋ก์ฐ job ๊ตฌ๋ถ ์์ฐ * chore : develop/main ๋ธ๋์น์ ๋ฐ๋ผ CI/CD ์ํฌํ๋ก์ฐ ๋ถ๋ฆฌ * chore : Spring Boot Acutator ์์กด์ฑ ์ถ๊ฐ * chore: Actions์์ SSH ์ ์ ํ docker ์คํ ๊ถํ ๊ฐ๋๋ก ์ค์ * chore: ์ปจํ ์ด๋ ์คํ ๋ก๊ทธ ํฐ๋ฏธ๋์ ์ถ๋ ฅ ์ค์ * chore : ํฌ์ค์ฒดํฌ ์ค์ * chore: secrets ์ง์ ssh ํ๊ฒฝ ๋ณ์๋ก ์ ๋ฌ * chore: ํ๊ฒฝ๋ณ์ ์ง์ docker run์ ๋ฃ๊ธฐ * chore: spdocker run ์์ ring profile ์ ๊ฑฐ * chore: nginx ์ค์ * chore: test-cd ์์ * chore: test-cd ์์ 2 * chore: ghcr ๋ก๊ทธ์ธ ํ ํฐ ์์ * chore: ๋์ปค ์ด๋ฏธ์ง pull ์ด๋ฆ ์์ * chore: ssh ๋ด ์์ ํ ghcr ๋ก๊ทธ์ธ * chore : ์ด๋ฏธ pullํ ์ด๋ฏธ์ง์ run ์ด๋ฏธ์ง ์ด๋ฆ ์ผ์น์ํค๊ธฐ * chore: mysql driver ์์กด์ฑ ์ถ๊ฐ * chore : ํฌ์ค์ฒดํฌ ์์ฒญ ์คํ๋ง ์ํ๋ฆฌํฐ ํํฐ์ ๊ฑธ๋ฆฌ์ง ์๋๋ก ์ค์ * chore: nginx ํฌํธ ์ค์์นญ ์ค์ * chore: nginx ํฌํธ ์ค์์นญ ์ค์ ์์ * chore: nginx ํฌํธ ์ค์์นญ ์ค์ ์์ 2 * chore: ์ด์์๋ฒ CD ์ํฌํ๋ก์ฐ ์์ * chore : prod-server ์ํฌํ๋ก์ฐ ํ์ฑํ ๊ฒฝ๋ก ์ค์ * chore : test commit ๋์ค์ ์ง์ฐ๊ธฐ * [Feat/OPS-214] ์คํ์ด์ค ๋ฉค๋ฒ ๊ด๋ฆฌ (#50) * feat/OPS-227 : ์คํ์ด์ค ๋ฉค๋ฒ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-227 : ์คํ์ด์ค ๋ชฉ๋ก ๋ฐํ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-251 : ๊ถํ ๋ณ๊ฒฝ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-214 : ๊ถํ ๋ณ๊ฒฝ ์๋ํฌ์ธํธ ๊ตฌํ * fix/OPS-214 : ๋จ์ ๋ฉ์ธ์ง ์ค๋ฅ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-214 : ๋ก์ง ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-251 : globalExceptionHandler์ ์ญ์ง๋ ฌํ ์คํจ ์๋ฌ ์ถ๊ฐ * refactor/OPS-214 : ๋น์ฆ๋์ค ๋ก์ง์ ์๋น์ค ๊ณ์ธต์ ์ผ์ * feat/OPS-231 : ์คํ์ด์ค ์ด๋ ์ปจํธ๋กค๋ฌ ํ ์คํธ์ผ์ด์ค ์์ฑ * feat/OPS-231 : ์คํ์ด์ค ์ด๋ ๋ก์ง ์์ฑ * feat/OPS-231 : ์คํ์ด์ค์ด๋ ์๋น์ค ๋น ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * feat/OPS-228 : ํ์ ํด์ถ ์ปจํธ๋กค๋ฌ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feeat/OPS-229 : ํ์ ํด์ถ ๊ตฌํ ์๋ฃ * fix : ๊ธฐ์กด ํ ์คํธ ์ผ์ด์ค ์ผ๊ด์ฑ ์๊ฒ ์์ * feat : ๋ฉค๋ฒ ํด์ถ ์๋น์ค ํ ์คํธ ์ฝ๋ ์์ฑ * refactor : DTO ํจํค์ง ๋ณ๊ฒฝ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ์ปจํธ๋กค๋ฌ ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ๋ก์ง ์์ฑ * refactor : space ๋๋ฉ์ธ dto ํจํค์ง ๋ณ๊ฒฝ * feat/OPS-227 : ์คํ์ด์ค ๋ฉค๋ฒ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-227 : ์คํ์ด์ค ๋ชฉ๋ก ๋ฐํ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-251 : ๊ถํ ๋ณ๊ฒฝ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-214 : ๊ถํ ๋ณ๊ฒฝ ์๋ํฌ์ธํธ ๊ตฌํ * fix/OPS-214 : ๋จ์ ๋ฉ์ธ์ง ์ค๋ฅ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-214 : ๋ก์ง ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-251 : globalExceptionHandler์ ์ญ์ง๋ ฌํ ์คํจ ์๋ฌ ์ถ๊ฐ * refactor/OPS-214 : ๋น์ฆ๋์ค ๋ก์ง์ ์๋น์ค ๊ณ์ธต์ ์ผ์ * feat/OPS-231 : ์คํ์ด์ค ์ด๋ ์ปจํธ๋กค๋ฌ ํ ์คํธ์ผ์ด์ค ์์ฑ * feat : ์ต์ ์ฌํญ ๋ฐ์ * feat/OPS-231 : ์คํ์ด์ค์ด๋ ์๋น์ค ๋น ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * feat/OPS-228 : ํ์ ํด์ถ ์ปจํธ๋กค๋ฌ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feeat/OPS-229 : ํ์ ํด์ถ ๊ตฌํ ์๋ฃ * fix : ๊ธฐ์กด ํ ์คํธ ์ผ์ด์ค ์ผ๊ด์ฑ ์๊ฒ ์์ * feat : ๋ฉค๋ฒ ํด์ถ ์๋น์ค ํ ์คํธ ์ฝ๋ ์์ฑ * refactor : DTO ํจํค์ง ๋ณ๊ฒฝ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ์ปจํธ๋กค๋ฌ ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ๋ก์ง ์์ฑ * refactor : space ๋๋ฉ์ธ dto ํจํค์ง ๋ณ๊ฒฝ --------- Co-authored-by: EpicFn <[email protected]> * refactor/OPS-308 : ๋๋ฉ์ธ ๋ถ๋ฆฌ & CI ์ํฌํ๋ก์ฐ์ application-secrets-server.yml ์ถ๊ฐ. (#52) * Ops 255 be feat ์๋ฃ ์์ (#54) * refactor/OPS-283 : datasource ์ํฐํฐ ์์ * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- Co-authored-by: EpicFn <[email protected]> * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * feat/OPS-226 : ์๋ฃ ๋ฑ๋ก ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-255 : ์๋ฃ ์ด๋ ๋ฐ ์์ ๊ตฌํ --------- Co-authored-by: Hyeok Jin Kim <[email protected]> Co-authored-by: EpicFn <[email protected]> * feat/OPS-289 : dataprocessor ์๋น์ค ์์ฑ (#59) * fix/OPS-318 : proxy host ์ค์์นญรฌ๏ฟฝ ssl ์ธ์ฆ์ ์ ์ง (#60) * [refactor/OPS-310] redirect url ๋ณ๊ฒฝ (#53) * refactor/OPS-310 : redirect-url ๋ณ๊ฒฝ. * refactor/OPS-310 : ์์ ์์ . * refactor/OPS-310 : ๋ ํ๋์ ์์ ์์ . * refactor/OPS-310 : ํฐ ์์ . * refactor/OPS-310 : ํ ์คํธ * refactor/OPS-310 : ์์ฒญ ์ฌํญ ๋ฐ์. * refactor/OPS-310 : ์์ฒญ ์ฌํญ ๋ฐ์ #2 * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ (#64) * [refactor/OPS-323] News API ์กฐํ ๋ก์ง ์์ . (#65) * ๋ฐฐํฌ ํ ์คํธ #2 * ๋ก์ง ์์ ํ ์คํธ * ๋ก์ง ์์ ํ ์คํธ #2 * refactor/OPS-322 : source ์นผ๋ผ๋ช ์์ (#68) * refactor/OPS-322 : source ์นผ๋ผ๋ช ์์ * refactor/OPS-322 : source ์นผ๋ผ๋ช ์์ * feat/OPS-321 : dataProcessorService์์ ์์ฝ ๋ก์ง ์์ฑ (#69) * [fix/OPS-317] CI/CD ํ์ดํ๋ผ์ธ ์ด๋ฒคํธ ๋ถ๋ฆฌ (#66) * fix : prod-server nginx ์ ๋ณด ์ถ๋ ฅ ์ ๊ฑฐ * fix : prod-server CD ์ํฌํ๋ก์ฐ main์ push๋ ๋ ์คํ๋๋๋ก ์์ * fix : test-server CI๋ pr์ develop์ ์คํ, CD๋ push๋ ๋ ์คํ * fix : test-server CI ์ํฌํ๋ก์ฐ์์ CD ๋ถ๋ถ ์ ๊ฑฐ * chore : ๋น๋์ aws๊ด๋ จ ์ ๋ณด application-secret.yml์ ๋ค์ด๊ฐ๋๋ก ์ค์ (#73) * chore : S3 ์ฌ์ฉ์ ์ํด ๋น๋์ AWS ์ ๋ณด application-secrets.yml์ ์ถ๊ฐ๋๋๋ก ์ค์ * chore : ์ญํ ์ S3 ์ ๊ทผ ์ ์ฑ ๋ถ์ฐฉ ํ๋๋ก ์ค์ * chore : รฃyml์ ์ถ๊ฐ์ ๋ณด ๋ฃ๋๋ก ์ค์ * [Feat/OPS-275] ์คํ์ด์ค ์ธ๋ค์ผ ์ด๋ฏธ์ง ์ ์ฅ (#71) * chore : S3 ํ๊ฒฝ ์ค์ * feat : S3Service ๊ตฌ์ฑ * chore : multipart ๋ฐ์ดํฐ ํฌ๊ธฐ ์ค์ * feat : S3 ์ ๋ก๋ ํ ์คํธ์ฉ ์๋ํฌ์ธํธ ์์ฑ * feat : S3 ์ฐ๋ ์๋ฃ * feat : space entity์ imageUrl ํญ๋ชฉ ์ถ๊ฐ * feat : ์ธ๋ค์ผ ์บก์ฒ ํ ์คํธ์ฉ * feat : ์ธ๋ค์ผ ์ดฌ์ ํ ์คํธ ์๋ํฌ์ธํธ ์์ฑ * feat : ์คํ์ด์ค ์ธ๋ค์ผ ๊ฐฑ์ API ์์ฑ * feat : ์คํ์ด์ค ์ด๋ฏธ์ง ๊ฐฑ์ ๊ธฐ๋ฅ ์์ฑ * feat : ์คํ์ด์ค ๋ชฉ๋ก ๋ฐํ ์ ์ธ๋ค์ผ url ๊ฐ์ด ๋ฐํ * feat : ์คํ์ด์ค ๋จ๊ฑด ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat : ์คํ์ด์ค ๋จ๊ฑด ์กฐํ ๊ตฌํ * feat : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ํ์ด์ง ๊ธฐ๋ฅ ์ถ๊ฐ --------- Co-authored-by: EpicFn <[email protected]> * [feat/OPS-324] ํฌ๋กฌ ํ์ฅ ํ๋ก๊ทธ๋จ ์์ ๋ก๊ทธ์ธ ๋ถ๊ธฐ & ์์ ๋ก๊ทธ์ธ ํ ์คํธ API ์ถ๊ฐ. (#70) * feat/OPS-324 : ํ์ฅ ํ๋ก๊ทธ๋จ ๋ถ๊ธฐ ๋ฐ ์์ ๋ก๊ทธ์ธ ํ ์คํธ API ์ถ๊ฐ. * feat/OPS-324 : ํ ์คํธ ๋ก์ง ์ผ๋ถ ์์ . * feat/OPS-324 : ํ ์คํธ ๋ก์ง ์ผ๋ถ ์์ . #2 * feat/OPS-324 : ํ ์คํธ ์๋ฃ, ํ ์คํธ ์ฝ๋ ์ ๊ฑฐ. * feat/OPS-324 : ๋ก๊ทธ์ธ ๋ถ๊ธฐ ์์ . * feat/OPS-324 : state ์ ๋ณด๋ฅผ ์ ์ฅํ๋ resolver ์ถ๊ฐ. * feat/OPS-324 : session ๋ฑ๋ก์ ์ํ OAuth2LoginSourceFilter ํด๋์ค ์ถ๊ฐ. * feat/OPS-324 : ํด๊ฒฐ * fix : ci ์ secrets ์์ S3 ๊ด๋ จ ์ํฌ๋ฆฟ ๊ฐ ์ญ์ ํ๋๋ก ๋ณ๊ฒฝ(๋ฒํท๋ช ์ ์ธ) (#74) * fix : ci ์ secrets ์์ S3 ๊ด๋ จ ์ํฌ๋ฆฟ ๊ฐ ์ญ์ ํ๋๋ก ๋ณ๊ฒฝ(๋ฒํท๋ช ์ ์ธ) * fix : CI ์คํ ์์ * fix : build ๋จ๊ณ์์ testest๋ฅผ ์ํํ์ง ์๋๋ก ๋ณ๊ฒฝ --------- Co-authored-by: EpicFn <[email protected]> * [feat/OPS-198] ์์นด์ด๋ธ ์ ๋ณด๋ก ๋ด์ค ๋ชฉ๋ก ์กฐํ (#75) * feat/OPS-198 : ์์นด์ด๋ธ ๊ธฐ๋ฐ ๋ด์ค ์กฐํ ๊ตฌํ. * feat/OPS-198 : ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ. * feat/OPS-265 : LLM-ํ์ฉ-๋ฐ์ดํฐ-์ ์ ํ-์-๊ธฐ์กด-์์นด์ด๋ธ์-ํ๊ทธ-์ฐ๋ (#77) * refactor/OPS-319: ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ (#76) * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * fix : SpringDoc๊ณผ Spring AI ๊ฐ ์์กด์ฑ ์ถฉ๋ ํด๊ฒฐ (#79) * [Feat/OPS-327] ์๋ฃ ๋ฑ๋ก llm ์ฐ๋ (#78) * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-327 : ์๋ฃ ๋ฑ๋ก LLM ์ฐ๋ * [feat/OPS-328] ์ธ์ฆ/์ธ๊ฐ ๋ก์ง ๋ณ๊ฒฝ (#80) * feat/OPS-328 : RefreshToken์ ์๋ฒ์์ ์ ์ฅํ๋๋ก ๋ณ๊ฒฝ. API ์ผ๋ถ ์์ . * feat/OPS-328 : ํ์ฅ ํ๋ก๊ทธ๋จ ๋ก๊ทธ์ธ ๋ฉ์๋ ์ถ๊ฐ ๋ฐ ๋ฐ์ดํฐ ์บ์ฑ ๋ฉ์๋ ์ถ๊ฐ. * [refactor/OPS-337] ์๊ตฌ์ฌํญ ๋ฐ์ ๋ฐ ์ผ๋ถ ๋ก์ง ์์ . (#81) * refactor/OPS-337 : ํ๋ก ํธ ์๊ตฌ์ฌํญ ๋ฐ์ ๋ฐ ์๋ฌ ์์ . * refactor/OPS-337 : ํ ์คํธ ์ผ์ด์ค ์์ . * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ (#82) * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : mock ์ถ๊ฐ๋ก ์ธํ testcase ์์ * [feat/OPS-338] ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ (#83) * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : mock ์ถ๊ฐ๋ก ์ธํ testcase ์์ * refactor/OPS-338 : Dev ํ ํฐ ๋ฐ๊ธ ์ปจํธ๋กค๋ฌ ์ถ๊ฐ * [Feat/OPS-326] ๋์๋ณด๋ ๋ฐ์ดํฐ ์ ์ฅ ์ฒด๊ณ ๊ตฌ์ถ (#85) * refactor : graph ๋๋ฉ์ธ์ dashboard ๋๋ฉ์ธ์ผ๋ก ์์ , dashboard ์ํฐํฐ ์์ฑ * feat : ์คํ์ด์ค ๋จ๊ฑด ์กฐํ ์ ๋์๋ณด๋ id๋ ํจ๊ป ๋ฐํ * refactor : API ๋ช ๋ณ๊ฒฝ * dashboard ๊ธฐ๋ฐ์ผ๋ก ์ ์ฅ/์กฐํ ๋๋๋ก ๋ณ๊ฒฝ * refactor : ํ ์คํธ ์ฝ๋ ์์ * fix : ๋ฐํ ๋ฉ์ธ์ง ์์ * feat : ์๋ช ๊ฒ์ฆ ๋ก์ง ๊ตฌํ * refactor : signature ์๋น์ค ๋ถ๋ฆฌ * fix : ์คํ ์์ * fix : CI ํ์ดํ๋ผ์ธ ์์ --------- Co-authored-by: EpicFn <[email protected]> * [feat/OPS-329] Sentry๋ฅผ ํตํ ๋ชจ๋ํฐ๋ง ํ๊ฒฝ ๊ตฌ์ถ. (#86) * feat/OPS-329 : Sentry๋ฅผ ํตํ ๋ชจ๋ํฐ๋ง ํ๊ฒฝ ๊ตฌ์ถ. * feat/OPS-329: ์ถ๊ฐ๋ก ํ๋ก ํธ ์๊ตฌ ์ฌํญ ๋ฐ์. * refactor/OPS-353 : ๋ถ๋ฆฌ ์๋ฃ. (#87) * [refactor/OPS-354] ํ ์คํธ ์ผ์ด์ค ์ฌ์ฉ ํ๋กํ ๋ณ๊ฒฝ. (#88) * refactor/OPS-354 : ํ ์คํธ ์ผ์ด์ค ์ฌ์ฉ ํ๋กํ ๋ณ๊ฒฝ. * refactor/OPS-354 : ์ด๋๋ ์๋ผ? * refactor/OPS-355 : ์๊ตฌ ์ฌํญ ๋ฐ์. (#91) * feat/OPS-358: Redis ์์กด์ฑ ์ถ๊ฐ ๋ฐ RedisConfig ์ค์ ์๋ฃ. AuthResultData ์ง๋ ฌํ ๋ฐ AuthResult ํด๋์ค์ TTL ๋์ . (#92) * feat/OPS-356 : ๋ค์ด๋ฒ ๋ธ๋ก๊ทธ ํฌ๋กค๋ฌ ์์ฑ (#93) * [feat/OPS-252] ์กฐ๊ฑด๋ณ ์๋ฃ ๊ฒ์ (#89) * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-327 : ์๋ฃ ๋ฑ๋ก LLM ์ฐ๋ * refactor/OPS-252 : ์กฐ๊ฑด๋ณ ์๋ฃ ๊ฒ์ ๊ตฌํ * refactor/OPS-252 : ์กฐ๊ฑด๋ณ ์๋ฃ ๊ฒ์ * fix : ์คํ์ด์ค, ์ฌ์ฉ์ ๋ชฉ๋ก ๋ฐํ ์ ํญ์ id ์ค๋ฆ์ฐจ์ ์ ๋ ฌ (#94) Co-authored-by: EpicFn <[email protected]> * IllegalStateException(๋์์ฑ ๋ฌธ์ )๊ด๋ จ ์ฒ๋ฆฌ ๋ฉ์๋ ์ถ๊ฐ. (#95) * [fix/OPS-362] ์๊ตฌ ์ฌํญ ๋ฐ์ (#96) * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์. * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#2 * [feat/OPS-341] ๋ฒจ๋ก๊ทธ ํฌ๋กค๋ฌ ์์ฑ (#90) * feat/OPS-341 : Velog ํฌ๋กค๋ฌ ์์ฑ * fix : createDate,modifyDate ์๋ ์ ์ฉ๋๋๋ก ์ค์ * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#3 (#97) * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#4 (#98) * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#5 (#99) * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#6 (#100) * [refactor/OPS-360] folder&datasource ๋ฆฌํํ ๋ง (#101) * refactor/OPS-360 : OpenAPI ์ ๋ํ ์ด์ ์ถ๊ฐ * refactor/OPS-360 : NoResultException ์์ธ ๋ถ๋ฆฌ * refactor/OPS-360 : param ์ถ๊ฐ * refactor/OPS-360 : param ์ถ๊ฐ * refactor/OPS-360 : default ํด๋ CRUD ๋ก์ง ์์ * refactor/OPS-360 : ํด๋ ๋ฆฌ์คํธ๋ ํธ์ถ ๋ก์ง ์์ * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#7 (#102) * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#8 (#103) * hotfix/OPS-346 : ํ์ผ ์กฐํ ์์ (#104) * [feat/OPS-365 ] soft delete + ํด์งํต ์กฐํ ๊ตฌํ (#105) * feat/OPS-365 : soft delete + ํด์งํต ์กฐํ ๊ตฌํ * refactor/OPS-246 : ์๊ตฌ์ฌํญ ๋ฆฌํฉํ ๋ง * chore : rabbitmq ํ๊ฒฝ์ค์ (#106) * chore : rabbitmq ๋ก์ปฌ ๊ฐ๋ฐ ํ๊ฒฝ ์ค์ * chore : rabbitmq ๊ด๋ จ springboot ํ๊ฒฝ ์ค์ * chore: rabbitmq ์์กด์ฑ ์ถ๊ฐ * [Feat/OPS-344] message queue ๊ตฌํ (#107) * chore : RabbitMQ ํ๊ฒฝ ์ค์ * chore : CI ํ์ดํ๋ผ์ธ์์ RabbitMQ ์ปจํ ์ด๋๋ฅผ ๋์์ ์ฌ์ฉํ๋๋ก ์ค์ * new : RabbitMQ ์ค์ ํด๋์ค, dto ์์ฑ * feat : producer method ์์ฑ * feat : ๋ฉ์ธ์ง ํ ๊ตฌํ ์๋ฃ * feat : ๋ฐ์ดํฐ ์ ์ฅ ์์ฒญ ํ ์คํธ ์ผ์ด์ค ์์ * feat : ConsumerTest ์ฝ๋ ์ถ๊ฐ * fix : ์ ์ฅ ํ ์คํธ ์ผ์ด์ค ์ฑ๊ณต * fix : ํ ์คํธ ์ฝ๋ ์์ ์ค * fix : ํ ์คํธ ์ผ์ด์ค ์ฑ๊ณต * feat : dlq ๋์ * feat : ๋ฐ์ดํฐ ์์ ๋ณด์ฅ์ ์ํด version ์ถ๊ฐ * refactor : MQConfig ํ์ผ ์์น ๋ณ๊ฒฝ * chore : RabbitMQ ํ๊ฒฝ ์ค์ # Conflicts: # docker-compose.yml # src/main/resources/application.yml * chore : CI ํ์ดํ๋ผ์ธ์์ RabbitMQ ์ปจํ ์ด๋๋ฅผ ๋์์ ์ฌ์ฉํ๋๋ก ์ค์ * new : RabbitMQ ์ค์ ํด๋์ค, dto ์์ฑ * feat : producer method ์์ฑ * feat : ๋ฉ์ธ์ง ํ ๊ตฌํ ์๋ฃ * feat : ๋ฐ์ดํฐ ์ ์ฅ ์์ฒญ ํ ์คํธ ์ผ์ด์ค ์์ * feat : ConsumerTest ์ฝ๋ ์ถ๊ฐ * fix : ์ ์ฅ ํ ์คํธ ์ผ์ด์ค ์ฑ๊ณต * fix : ํ ์คํธ ์ฝ๋ ์์ ์ค * fix : ํ ์คํธ ์ผ์ด์ค ์ฑ๊ณต * feat : dlq ๋์ * feat : ๋ฐ์ดํฐ ์์ ๋ณด์ฅ์ ์ํด version ์ถ๊ฐ * refactor : MQConfig ํ์ผ ์์น ๋ณ๊ฒฝ * fix : ์ต์ ์ฌํญ ๋ฐ์ * fix : copilot review ๋ฐ์ * feat : Dashboard์์ graph ์ฐธ์กฐ ๋ฐฉ์ EAGER -> LAZY ๋ก ๋ณ๊ฒฝ * CI ์คํจํด์ ๋ค์ EAGER๋ก ๋ณ๊ฒฝ * fix : ๋ค์ LAZY๋ก ๋ณ๊ฒฝ --------- Co-authored-by: EpicFn <[email protected]> * [Refactor/OPS-373] ์๋ฃ ์กฐํ ๊ฒ์ ์๊ตฌ์ฌํญ ์์ (#108) * refactor/OPS-373 : ์๋ฃ ์ด๋ฆ unique ์์ฑ ์ญ์ * refactor/OPS-373 : ์๋ฃ ์์ ๊ฐ๋ฅ ์นผ๋ผ ์ถ๊ฐ * refactor/OPS-373 : ๋ช ์์ null๊ณผ ๋ฏธ์ ๋ฌ ๊ตฌ๋ถ * [Feat/OPS-376] ์คํ์ด์ค ๋ชฉ๋ก ์ฐธ์ฌ ์ธ์ ๋ฐํ api ๊ตฌ์ฑ (#109) * refactor : dto ์ด๋ฆ ์ผ๋ถ ๋ณ๊ฒฝ * feat : ๊ตฌํ ์๋ฃ * feat : ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * fix : ํ ์คํธ ์ผ์ด์ค ์์ --------- Co-authored-by: EpicFn <[email protected]> * [Refactor/OPS-290] ๋ฐ์ดํฐ์์ค ์ ์ ํ ๊ธฐ๋ฅ ๊ณ ๋ํ (#112) * refactor/OPS-290 : ๋ฐ์ดํฐ์์ค ์ ์ ํ ๊ธฐ๋ฅ ๊ณ ๋ํ * [Feat/OPS-346] ๊ณต์ ํด๋ ๊ด๋ฆฌ (#113) * refactor/OPS-360 : OpenAPI ์ ๋ํ ์ด์ ์ถ๊ฐ * refactor/OPS-360 : NoResultException ์์ธ ๋ถ๋ฆฌ * refactor/OPS-360 : param ์ถ๊ฐ * refactor/OPS-360 : param ์ถ๊ฐ * refactor/OPS-360 : default ํด๋ CRUD ๋ก์ง ์์ * refactor/OPS-360 : ํด๋ ๋ฆฌ์คํธ๋ ํธ์ถ ๋ก์ง ์์ * refactor/OPS-346 : ๊ณต์ ํด๋ ๊ด๋ฆฌ * feat/OPS-365 : soft delete + ํด์งํต ์กฐํ ๊ตฌํ * feat/OPS-346 : ๊ณต์ ํด๋ ๊ด๋ฆฌ * feat/OPS-346 : ๊ณต์ ํด๋ ๊ด๋ฆฌ * refactor/OPS-346 : ๊ฐ์ธ / ๊ณต์ ํณ๋ ๊ด๋ฆฌ ๋ถ๋ฆฌ * refactor/OPS-346 : ๊ฒ์ ๊ธฐ๋ฅ ์ถ์ฒ ๋๋ฝ ์์ * feat : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ์ ์์ฑ ์ผ์๋ ๋ฐํ (#114) Co-authored-by: EpicFn <[email protected]> * [feat/OPS-377] ์ด์/ํ ์คํธ ์๋ฒ ๋ถ๋ฆฌ ์์ (#115) * feat/OPS-377 : ํ ์คํธ/์ด์ ํ๊ฒฝ ๋ถ๋ฆฌ * feat/OPS-377 : ํ ์คํธ/์ด์ ํ๊ฒฝ ๋ถ๋ฆฌ #2 * feat/OPS-377 : ํ ์คํธ/์ด์ ํ๊ฒฝ ๋ถ๋ฆฌ #3 * feat/OPS-377 : ํ ์คํธ/์ด์ ํ๊ฒฝ ๋ถ๋ฆฌ #4 * [Fix/OPS-378] ๋์๋ณด๋ ํ์ entity ์์ (#117) * fix : node, edge dto ์์ * fix : ํ ์คํธ ์ผ์ด์ค ์์ * fix : ํ ์คํธ ์์ ์๋ฃ * fix : ์คํ ์์ * fix : ์คํ ์ถ๊ฐ ์์ ; --------- Co-authored-by: EpicFn <[email protected]> * [Feat/OPS-379] liveblocks ์ฐ๋ (#118) * new : Liveblock API ํธ์ถ์ ์ํ Client ๋น ์์ฑ * feat : ์คํ์ด์ค ์์ฑ/์ญ์ ์ liveblocks room ๋ ํจ๊ป ์์ฑ/์ญ์ * fix : test ์ mock ๋น ์ฌ์ฉ * feat : jwt ๋ฐ๊ธ ๋ก์ง ๊ตฌํ --------- Co-authored-by: EpicFn <[email protected]> * [Feat/OPS-246] ๊ณต์ ํ์ผ ๊ด๋ฆฌ (#119) * refactor/OPS-360 : OpenAPI ์ ๋ํ ์ด์ ์ถ๊ฐ * refactor/OPS-360 : NoResultException ์์ธ ๋ถ๋ฆฌ * refactor/OPS-360 : param ์ถ๊ฐ * refactor/OPS-360 : param ์ถ๊ฐ * refactor/OPS-360 : default ํด๋ CRUD ๋ก์ง ์์ * refactor/OPS-360 : ํด๋ ๋ฆฌ์คํธ๋ ํธ์ถ ๋ก์ง ์์ * refactor/OPS-346 : ๊ณต์ ํด๋ ๊ด๋ฆฌ * feat/OPS-365 : soft delete + ํด์งํต ์กฐํ ๊ตฌํ * feat/OPS-346 : ๊ณต์ ํด๋ ๊ด๋ฆฌ * feat/OPS-346 : ๊ณต์ ํด๋ ๊ด๋ฆฌ * feat/OPS-246 : ๊ณต์ ํ์ผ ๊ด๋ฆฌ * refactor/OPS-346 : ๊ฐ์ธ / ๊ณต์ ํณ๋ ๊ด๋ฆฌ ๋ถ๋ฆฌ * refactor/OPS-346 : ๊ฐ์ธ / ๊ณต์ ํ์ผ ๊ด๋ฆฌ ๋ถ๋ฆฌ * refactor/OPS-346 : ๊ฒ์ ๊ธฐ๋ฅ ์ถ์ฒ ๋๋ฝ ์์ * feat/OPS-246 : ๊ฐ์ธ / ๊ณต์ ํ์ผ ๊ด๋ฆฌ ๋ถ๋ฆฌ * feat/OPS-246 : api ์์ฒญ ์์ * feat/OPS-246 : api ์์ฒญ ์์ - request ์ด๋ฆ ํต์ผ * refactor/OPS-246 : ๋จธ์ง * refactor/OPS-246 : ๋จธ์ง * [Feat/OPS-388] ๋ค๊ฑด์ญ์ DELETE ๋ณธ๋ฌธ ์์ (#122) * refactor/OPS-388 : ๋ค๊ฑด์ญ์ DELETE ๋ณธ๋ฌธ ์์ * refactor/OPS-388 : ๋ค๊ฑด์ญ์ DELETE ํ ์คํธ ์ผ์ด์ค ์์ * Hotfix/์คํ์ด์ค์ด๋๋ชฉ๋ก ๋ฐํ ์ invite id ํฌํจ (#123) * fix : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์ inviteId ๋ฐํํ๋๋ก ๋ณ๊ฒฝ * fix : ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ --------- Co-authored-by: EpicFn <[email protected]> * [Feat/OPS-379] liveblocks ์ฐ๋ (#124) * new : Liveblock API ํธ์ถ์ ์ํ Client ๋น ์์ฑ * feat : ์คํ์ด์ค ์์ฑ/์ญ์ ์ liveblocks room ๋ ํจ๊ป ์์ฑ/์ญ์ * fix : test ์ mock ๋น ์ฌ์ฉ * feat : jwt ๋ฐ๊ธ ๋ก์ง ๊ตฌํ * fix : SpaceArchiveDataSourceControllerTest์์ liveblocks ๋น mock ์ฒ๋ฆฌ * fix : ์คํ ์์ --------- Co-authored-by: EpicFn <[email protected]> * refactor : secrets๊ฐ ์ปจํ ์ด๋ ์คํ์ ํ๊ฒฝ๋ณ์๋ก ์ฃผ์ ๋๋๋ก ์์ (#120) * refactor: ๋น๋ ์ secrets.yml ํ์ผ ์ญ์ * refactor : ํ ์คํธ ์๋ฒ ํ๊ฒฝ๋ณ์ ์ฃผ์ ์ค์ * refactor : ์ด์์๋ฒ ํ๊ฒฝ๋ณ์ ์ฃผ์ ์ค์ * refactor : ์ด์ํ๊ฒฝ๋ณ YML ๋ถ๋ฆฌ ๋ฐ ๋ฐฐํฌ ํ๊ฒฝ ์ค์ ๊ตฌ์กฐ ๊ฐ์ * refactor : ๋ก์ปฌ(dev,test).yml ๋ณต๊ตฌ * refactor : ๋น๋์ ํ ์คํธ secrets.yml V2๋ก ๋ณ๊ฒฝ * refactor: gradle ํ ์คํธ์ ํ๊ฒฝ๋ณ์๋ก ์ค์ ๊ฐ ์ฃผ์ * refactor: ymlํ์ผ ๋ค์ฌ์ฐ๊ธฐ ์์ * refactor: yml ํ๋ ์ด์คํ๋ ๋ค์ด๋ฐ ๊ท์น ์ผ๊ด์ฑ ์ ์งํ๋๋ก ์์ * [Feat/ops-379] feat liveblocks ์ฐ๋ (#127) * new : Liveblock API ํธ์ถ์ ์ํ Client ๋น ์์ฑ * feat : ์คํ์ด์ค ์์ฑ/์ญ์ ์ liveblocks room ๋ ํจ๊ป ์์ฑ/์ญ์ * fix : test ์ mock ๋น ์ฌ์ฉ * feat : jwt ๋ฐ๊ธ ๋ก์ง ๊ตฌํ * fix : SpaceArchiveDataSourceControllerTest์์ liveblocks ๋น mock ์ฒ๋ฆฌ * fix : ์คํ ์์ * new : Liveblock API ํธ์ถ์ ์ํ Client ๋น ์์ฑ # Conflicts: # src/main/java/org/tuna/zoopzoop/backend/global/clients/liveblocks/LiveblocksClient.java --------- Co-authored-by: EpicFn <[email protected]> * fix : ์คํ ์์ (#128) Co-authored-by: EpicFn <[email protected]> * [Hotfix] ํ์ดํ๋ผ์ธ ์คํ ์์ (#129) * fix : ์คํ ์์ * fix : bucket ์คํ ์์ * fix: S3 ๊ด๋ จ ๊ฐ ๋กค๋ฐฑ --------- Co-authored-by: EpicFn <[email protected]> * refactor: s3 prefix separation (#131) * refactor: S3 prefix ํ๊ฒฝ๋ณ์ ๋ถ๋ฆฌ ๋ฐ server ํ๋กํ์ผ ์ค์ ์ถ๊ฐ * fix: cd ์คํ ์์ * fix : docker run ์ฃผ์ ์์ฐ * refactor: s3 prefix separation (#132) * refactor: S3 prefix ํ๊ฒฝ๋ณ์ ๋ถ๋ฆฌ ๋ฐ server ํ๋กํ์ผ ์ค์ ์ถ๊ฐ * fix: cd ์คํ ์์ * fix : docker run ์ฃผ์ ์์ฐ * fix: bucket ์คํ ์์ * fix: ์คํ ์ ๊ฑฐ * [fix/OPS-390] Secret ๊ฐ ๊ด๋ จ ์ผ๋ถ ์์ (#126) * fix/OPS-390 : secret ํ ํ๋ฆฟ ๋ฐ ์์ ์ฌํญ์ ๋ง๊ฒ ์ฝ๋ ๋ณ์๋ช ๋ณ๊ฒฝ. * feat/OPS-390: NEWS API ์์ ์ถ๊ฐ ์ฌํญ ๋ฐ์. * feat/OPS-390: CI ์ํฌํ๋ก์ฐ ์ผ๋ถ ์์ . * feat/OPS-390: ์ผ๋ถ placeholders ์์ . * feat/OPS-390: ์ผ๋ถ ๋ฌธ์ํ ํญ๋ชฉ ์์ . * refactor: s3 prefix ๋ถ๋ฆฌ ๋ฐ ci/cd ์์ ํ (#134) * refactor: S3 prefix ํ๊ฒฝ๋ณ์ ๋ถ๋ฆฌ ๋ฐ server ํ๋กํ์ผ ์ค์ ์ถ๊ฐ * fix: bucket ์คํ ์์ * [Hotfix] ๋ก๊ทธ์ธ ์๋ฌ ์์ (#135) * Update README.md * Remove unnecessary blank line in ApiV1DashboardController * [Feat/OPS-389] ์คํ์ด์ค ์ด๋ ์๋ฆผ ๊ตฌํ (#136) * new : emitter ๊ด๋ฆฌ service, controller ์์ฑ * feat : ํํธ๋นํธ ๋ก์ง ๊ตฌํ * fix : ๋น๋๊ธฐ ์ฒ๋ฆฌ ํ๋๋ก ๋ณ๊ฒฝ * feat : ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * fix : ํ ์คํธ ์์ * fix : ๋ถํ์ํ ์ด๋ ธํ ์ด์ ์ญ์ --------- Co-authored-by: EpicFn <[email protected]> * [feat/OPS-392] ์ฌ์ฉ์ ๊ฒ์ ๊ธฐ๋ฅ ์ถ๊ฐ (#137) * feat/OPS-392: ๊ฒ์ ๊ธฐ๋ฅ ์ถ๊ฐ & ElasticSearch ๊ตฌํ & ์ผ๋ถ ๋๋ฉ์ธ ์ค๋ฅ ์์ . * feat/OPS-392: CI ์ํฌํ๋ก์ฐ์ ElasticSearch ์๋น์ค ์ปจํ ์ด๋ ์์ฑ ๋ก์ง ์ถ๊ฐ. * feat/OPS-392: CI ์ํฌํ๋ก์ฐ์ ElasticSearch ์๋น์ค ์ปจํ ์ด๋ ์์ฑ ๋ก์ง ์ถ๊ฐ #2 * feat/OPS-392: ์ถ๊ฐ ๋๋ฉ์ธ ์ค๋ฅ ์์ . * feat/OPS-392: Docker-compose์ elastic-search ์๋น์ค ํญ๋ชฉ ์ถ๊ฐ. * fix: ๋๋ฉ์ธ ์์ฒญ ์ฌํญ์ ๋ง๊ฒ ์์ . (#138) * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. (#139) * ๋ฐฐํฌ์ฉ ์ปค๋ฐ (#140) * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #2 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. (#142) * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #2 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #3 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #4 * [Feat/OPS-391] ์์นด์ด๋ธ ์๋ฃ img ์๋ฃ ํ์ ์์ (#141) * feat/OPS-391 : ์ด๋ฏธ์ง ์์ multi part ๊ตฌํ * feat/OPS-391 : ์ด๋ฏธ์ง ์์ multi part ๊ตฌํ * refactor/OPS-391 : enum ๋์๋ฌธ์ ๋ฌด์ * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. (#143) * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #2 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #3 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #4 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #5 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #6 * fix: ์ด์์๋ฒ rabbitmq ํ๊ฒฝ๋ณ์ ์ค์ (#144) * feat/OPS-393 : ํฐ์คํ ๋ฆฌ ํฌ๋กค๋ฌ ์์ฑ (#145) * fix/OPS-394: API ๋ฌธ์ํ ๋ฐ s3 ์ค๋ฅ ์์ #1 (#146) * [fix/OPS-394] ๋ฌธ์ํ ๋ฐ ์ค๋ฅ ์์ 3 (#148) * fix/OPS-394: API ๋ฌธ์ํ ๋ฐ s3 ์ค๋ฅ ์์ #3 * fix/OPS-394: API ๋ฌธ์ํ ๋ฐ s3 ์ค๋ฅ ์์ #4 * refactor/OPS-395: ๊ฒ์ ๋ก์ง ์์ . (#149) * fix: ๋ฒจ๋ก๊ทธ ํฌ๋กค๋ฌ ์์ฑ์ผ์ ํ์ฑ ์ด์ ํด๊ฒฐ (#111) * fix : ์์ฑ์ผ์ ํ์ฑ ์ด์ ํด๊ฒฐ * refactor: velog ํฌ๋กค๋ฌ ์ฐ์ ์์ ๋๊ฒ ์ค์ * fix: ๋ฒจ๋ก๊ทธ ํฌ๋กค๋ฌ ์์ธ ์ฒ๋ฆฌ ์ถ๊ฐ (HTML ์์ ์์ ์ ๋น ๋ฌธ์์ด, ์์ฑ์ผ ์์ ์ ๊ธฐ๋ณธ๊ฐ) * fix : docker ์คํ์ AWS ํ๊ฒฝ๋ณ์๊ฐ ์ ๊ฑฐ (#150) --------- Co-authored-by: Whitedoggy <[email protected]> Co-authored-by: Copilot <[email protected]> Co-authored-by: taekkong <[email protected]> Co-authored-by: main <[email protected]> Co-authored-by: EpicFn <[email protected]> Co-authored-by: osh5030 <[email protected]>
Kimgooner
added a commit
that referenced
this pull request
Oct 13, 2025
* [feat/OPS-262] GlobalExceptionHandler ์ค์ (#8) * feat: GlobalExceptionHandler ์งํ ์ฌํญ ์ ์ฅ. * feat/OPS-262 : GlobalExceptionHandler ์์ฑ ์๋ฃ. * [feat/OPS-126] Member ๋๋ฉ์ธ ๊ธฐ์ด ์ค๊ณ (#9) * feat/OPS-127 : Member ์ํฐํฐ ์์ฑ(ํ๋, ์ฐ๊ด ๊ด๊ณ, ์์ฑ์, ๋ฉ์๋) * feat/OPS-128 : MemberRepository ์์ฑ(name, email ๊ฒ์ ์ต์ ์ถ๊ฐ) * feat: GlobalExceptionHandler ์์ฑ์ ์ํ ์งํ ์ฌํญ ์ ์ฅ. * feat/OPS-129 : MemberService ์์ฑ(์กฐํ, ์์ฑ/์์ , ์ญ์ ) * feat/OPS-126 : Member ๋๋ฉ์ธ ์ค๊ณ ์๋ฃ. Service ํ ์คํธ ์ฝ๋ ์ถ๊ฐ * [Chore/OPS-264] ci ์ํฌํ๋ก์ฐ ๊ฐ์ (#10) * chore/OPS-264 : ci.yml ์์ * Update .github/workflows/ci.yml Co-authored-by: Copilot <[email protected]> * Update .github/workflows/ci.yml Co-authored-by: Copilot <[email protected]> --------- Co-authored-by: Copilot <[email protected]> * Update .gitignore to exclude IntelliJ files (#11) Add .idea/ to .gitignore to exclude IntelliJ project files * feat/OPS-134 : ApiV1Controller ์์ฑ ์๋ฃ. (#12) * [chore/OPS-268] CI ์ํฌํ๋ก์ฐ ๊ฐ์ #2 (#15) ํ์ฌ ์์ ๋ก๊ทธ์ธ์ ์ฌ์ฉํ๋ ํน์ ๋ฏผ๊ฐํ ๊ฐ(JWT ํ ํฐ, ์์ client_id ๋ฑ)์ @value ์ด๋ ธํ ์ด์ ์ ํตํด ๋ฐ์์ค๊ณ ์์ต๋๋ค. ํ์ง๋ง ํด๋น ๋ฏผ๊ฐํ ๊ฐ์ ์ ์ฅํ yaml ํ์ผ์ ๋ ํฌ์งํ ๋ฆฌ์ ๋ฐ๋ก ์ฌ๋ฆด ์ ์๊ธฐ์, ๋ ํฌ์งํ ๋ฆฌ์ secrets์ ํด๋น ๊ฐ๋ค์ ์ ์ฅํด๋๊ณ , CI ์ํฌํ๋ก์ฐ์ ์ด ๊ฐ๋ค์ ์ฌ์ฉํด์ application-secrets.yml ํ์ผ์ ์์ฑํ๋ ๋ก์ง์ ์ถ๊ฐํ์ต๋๋ค. * [feat/OPS-155] ์์ ๋ก๊ทธ์ธ ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ(์นด์นด์ค) (#18) * feat/OPS-155 : ์์ ๋ก๊ทธ์ธ/ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ (์นด์นด์ค) ์๋ฃ. ์์ ์ฌํญ ๋ฐ์. * feat/OPS-155 : ์์ ๋ก๊ทธ์ธ/ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ (์นด์นด์ค) ์๋ฃ. ์์ ์ฌํญ ๋ฐ์ #2. * feat/OPS-155 : ์์ ๋ก๊ทธ์ธ/ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ (์นด์นด์ค) ์๋ฃ. ์์ ์ฌํญ ๋ฐ์ #3. * [chore/ops-130] Terraform์ ํ์ฉํด EC2 ์ธ์คํด์ค ์์ฑ ๋ฐ ์ค์ (#17) * chore/OPS-266 : EC2 ์ธ์คํด์ค ์์ฑ * chore/OPS-267 : VPC, IAM, SG ์ค์ * chore : ์๋ธ๋ท ์ค์ ์์ ๋ฐ nginx, mysql ๋ณผ๋ฅจ ๋ง์ดํธ ์ค์ ์ถ๊ฐ * chore : Dockerfile ์์ ๋ฐ EC2 ๋ณด์ ๊ทธ๋ฃน ์์ * chore : MYSQL ์ปจํ ์ด๋ ์คํ์ ์ด๊ธฐ DB ์ด๋ฆ ์ง์ ํ๋๋ก ์ค์ * fix/OPS-271 : SecurityConfig ๋ฐ Jwt ์ธ์ฆ ํํฐ ์์ (#19) * Feat/ops 209 be feat ํด๋ ์์ฑ (#21) * refactor: archive_id + name ๋ณตํฉ ์ ๋ํฌ ์ ์ฝ ์ถ๊ฐ * refactor: folder_id + title ๋ณตํฉ ์ ๋ํฌ ์ ์ฝ ์ถ๊ฐ * refactor: member_id, archive_id ๋จ์ผ ์ ๋ํฌ ์ ์ฝ ์ถ๊ฐ * refactor: ์ํฐํฐ ์ ์ฝ * feat/OPS-209-BE-feat-ํด๋-์์ฑ ์๋ฃ * feat/OPS-209-BE-feat-ํด๋-์์ฑ ์๋ฃ * fix : ์ปจ๋ฒค์ ํต์ผ (#22) Co-authored-by: EpicFn <[email protected]> * Feat/ops 210 be feat ํด๋ ์ญ์ (#23) * feat/OPS-210 : ํด๋ ์ญ์ ๊ตฌํ * [feat/OPS-151] llm ํ์ฉ ๋ฐ์ดํฐ ์ ์ ํ ๊ธฐ๋ฅ ๊ตฌํ (#27) - groq api๋ฅผ ์ด์ฉํ์ฌ ์์ฝ, ํ๊ทธ ์ถ์ถ ๊ธฐ๋ฅ ๊ตฌํ * [feat/OPS-158] ์์ ๋ก๊ทธ์ธ ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ(๊ตฌ๊ธ) (#28) * feat/OPS-158 : ์์ ๋ก๊ทธ์ธ(๊ตฌ๊ธ) ๊ตฌํ, JWT, Member, Auth ๋๋ฉ์ธ ๊ณ ๋ํ * feat/OPS-158 : ํ ์คํธ ์ผ์ด์ค ์์ . * fix/OPS-158 : template ์ถฉ๋ ํด๊ฒฐ. * fix/OPS-158 : @transactional import ์์ * feat/OPS-211 : ํด๋ ์ด๋ฆ ๋ณ๊ฒฝ ๊ตฌํ (#25) * feat/OPS-211 : ํด๋ ์ด๋ฆ ๋ณ๊ฒฝ ๊ตฌํ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * [chore/OPS-187] Terraform์ ํ์ฉํด RDS ์ธ์คํด์ค ์์ฑ ๋ฐ ์ค์ (#29) * chore/OPS-187 : Terraform์ ํ์ฉํด RDS ์ธ์คํด์ค ์์ฑ ๋ฐ ์ค์น * chore : RDS ์๋ธ๋ท ๊ทธ๋ฃน private์ผ๋ก ์์ * chore : AWS ๋ฆฌ์์ค ๋ค์ด๋ฐ ๊ท์น ์ ์ฉ * [feat] ์คํ์ด์ค ๋ฐ์ดํฐ ๊ด๋ฆฌ (#32) * new/OPS-222 : space controller, sevice, repository ๋น ์์ฑ # Conflicts: # src/main/java/org/tuna/zoopzoop/backend/global/initData/BaseInitData.java * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ์๋ํฌ์ธํธ ์ถ๊ฐ * new/OPS-222 : spaceControllerTest ํ์ผ ์ธํ * refactor/OPS-222 : ํ ์คํธ ํด๋์ค์ ๊ณต์ฉ ํํธ ์ถ์ ํด๋์ค๋ก ๋ถ๋ฆฌ * fix : ์ต์ ์ฌํญ ๋ฐ์ * fix/OPS-222 : ํ ์คํธ ์ฝ๋์์ ํ์ ๋ค๋ฅด๋ ๊ฑฐ ์์ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๊ตฌํ * feat/OPS-222 : space ๋จ์ ํธ๋ค๋ฌ, ์ปค์คํ ์๋ฌ ์์ฑ * fix/OPS-222 : controller ์์ฑ ํ ์คํธ ํต๊ณผ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๋ก์ง ์์ฑ * feat/OPS-222 : ์คํ์ด์ค ์ญ์ ๊ตฌํ * fix/OPS-222 : ํ ์คํธ ์ผ์ด์ค ํต๊ณผ * feat/OPS-245 : controller ๋จ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-245 : ์คํ์ด์ค ๋ช ๋ณ๊ฒฝ ๊ตฌํ * fix/OPS-244 : ์ด๋ฆ ๋ณ๊ฒฝ ์ saveAndFlush๋ก ์ฆ์ ๋ฐ์ * chore/OPS-222 : develop ์ต์ ์ฌํญ ๋ฐ์ * fix : ์ ์ฅ * fix/OPS-222 : globalExceptionHandler ์ปจ๋ฒค์ ํต์ผ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ controller ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-244 : membership ๊ด๋ฆฌ ๋น ์์ฑ * feat/OPS-244 : membership ์์ฑ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ฑ * fix : ํ ์คํธ ์ผ์ด์ค ๊ฐ ์ถฉ๋ ํด๊ฒฐ ์ค * fix : ์ต์ ์ฌํญ ๋ฐ์ * ์์์ ์ฅ * ์ด๊ธฐ ์ํ * fix : ๋ฏธ๋ด์ฑ ์ ์ฉ * feat/OPS-244 : ์คํ์ด์ค ๋ฉค๋ฒ ์ถ๊ฐ ๊ธฐ๋ฅ * fix : spaceControllerTest์ memberControllerTest ๊ฐ ์ถฉ๋ ํด๊ฒฐ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * chore/OPS-244 : ์ธ์ฆ ๊ด๋ จ ์ฝ๋ ์ฃผ์ ์ฒ๋ฆฌ * feat/OPS-270 : ์คํ์ด์ค ๋ก์ง์ ์ฌ์ฉ์ ์ ๋ณด ์ฒดํฌ ์ถ๊ฐ * feat/OPS-22 : ํ ์คํธ ์ผ์ด์ค์ WithUserDetails ๋ฐ์ * feat/OPS-222 : ์ธ์ฆ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * fix : ๋ถํ์ํ ์ฃผ์ ์ญ์ * new/OPS-222 : space controller, sevice, repository ๋น ์์ฑ # Conflicts: # src/main/java/org/tuna/zoopzoop/backend/global/initData/BaseInitData.java * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ์๋ํฌ์ธํธ ์ถ๊ฐ * new/OPS-222 : spaceControllerTest ํ์ผ ์ธํ * refactor/OPS-222 : ํ ์คํธ ํด๋์ค์ ๊ณต์ฉ ํํธ ์ถ์ ํด๋์ค๋ก ๋ถ๋ฆฌ * fix : ์ต์ ์ฌํญ ๋ฐ์ * fix/OPS-222 : ํ ์คํธ ์ฝ๋์์ ํ์ ๋ค๋ฅด๋ ๊ฑฐ ์์ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๊ตฌํ * feat/OPS-222 : space ๋จ์ ํธ๋ค๋ฌ, ์ปค์คํ ์๋ฌ ์์ฑ * fix/OPS-222 : controller ์์ฑ ํ ์คํธ ํต๊ณผ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๋ก์ง ์์ฑ * feat/OPS-222 : ์คํ์ด์ค ์ญ์ ๊ตฌํ * fix/OPS-222 : ํ ์คํธ ์ผ์ด์ค ํต๊ณผ * feat/OPS-245 : controller ๋จ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-245 : ์คํ์ด์ค ๋ช ๋ณ๊ฒฝ ๊ตฌํ * fix/OPS-244 : ์ด๋ฆ ๋ณ๊ฒฝ ์ saveAndFlush๋ก ์ฆ์ ๋ฐ์ * chore/OPS-222 : develop ์ต์ ์ฌํญ ๋ฐ์ * fix : ์ ์ฅ * fix/OPS-222 : globalExceptionHandler ์ปจ๋ฒค์ ํต์ผ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ controller ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-244 : membership ๊ด๋ฆฌ ๋น ์์ฑ * feat/OPS-244 : membership ์์ฑ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ฑ * fix : ํ ์คํธ ์ผ์ด์ค ๊ฐ ์ถฉ๋ ํด๊ฒฐ ์ค * fix : ์ต์ ์ฌํญ ๋ฐ์ * ์์์ ์ฅ * ์ด๊ธฐ ์ํ * fix : ๋ฏธ๋ด์ฑ ์ ์ฉ * feat/OPS-244 : ์คํ์ด์ค ๋ฉค๋ฒ ์ถ๊ฐ ๊ธฐ๋ฅ * fix : spaceControllerTest์ memberControllerTest ๊ฐ ์ถฉ๋ ํด๊ฒฐ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * chore/OPS-244 : ์ธ์ฆ ๊ด๋ จ ์ฝ๋ ์ฃผ์ ์ฒ๋ฆฌ * feat/OPS-270 : ์คํ์ด์ค ๋ก์ง์ ์ฌ์ฉ์ ์ ๋ณด ์ฒดํฌ ์ถ๊ฐ * feat/OPS-22 : ํ ์คํธ ์ผ์ด์ค์ WithUserDetails ๋ฐ์ * feat/OPS-222 : ์ธ์ฆ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * fix : ๋ถํ์ํ ์ฃผ์ ์ญ์ * fix : ๋ถํ์ํ ํ์ผ ์ญ์ --------- Co-authored-by: EpicFn <[email protected]> * Ops 272 be feat ์๋ฃ ์ด๋ฆ ์กฐํ (#31) * feat/OPS-211 : ํด๋ ์ด๋ฆ ๋ณ๊ฒฝ ๊ตฌํ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * feat/OPS-272 : ํด๋/ํ์ผ ์กฐํ ๊ตฌํ * refactor/OPS-272 : tag ์์ฑ์ ์ถ๊ฐ * feat/OPS-195 : ๋ด์ค ๋ชฉ๋ก ์กฐํ ๊ธฐ๋ฅ ๊ตฌํ(์ต์ ๋ด์ค, ํค์๋ ๊ธฐ๋ฐ). ์๋น์ค ํ ์คํธ ์ถ๊ฐ. (#33) * refactor/OPS-277 : default ํด๋ ์๋ ์์ฑ (#34) * [chore/OPS-278] Auth, Member, News ๋๋ฉ์ธ ๋ฌธ์ํ ๋ฐ ๊ณ ๋ํ. (#35) * chore/OPS-278 : Auth ๋๋ฉ์ธ ๋ฌธ์ํ ์๋ฃ & ApiV1MemberController ์ถ๊ฐ ๊ธฐ๋ฅ ๊ตฌํ. * refactor/OPS-278 : ApiV1MemberController ์ถ๊ฐ ์ฌํญ์ ๋ง๊ฒ ํ ์คํธ ์ถ๊ฐ ๊ตฌํ. * refactor/OPS-278 : Member ์์ฑ ์, ๋๋คํ UUID์ ์ 5๊ธ์๋ฅผ ํ๊ทธ๋ก ์ฌ์ฉํ๋๋ก ๋ณ๊ฒฝ. * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- Co-authored-by: EpicFn <[email protected]> * refactor/OPS-283 : datasource ์ํฐํฐ ์์ (#39) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * [feat/OPS-175] ์น ํฌ๋กค๋ง ๋ฐ์ดํฐ ์ ์ ํ ๊ธฐ๋ฅ ๊ตฌํ (#41) * feat/OPS-175 : ์น ํฌ๋กค๋ง ๋ฐ์ดํฐ ์ ์ ํ ๊ธฐ๋ฅ ๊ตฌํ * [refactor/OPS-287] News ๋๋ฉ์ธ ๊ณ ๋ํ (#42) * refactor/OPS-287 : newsSearch ๋ฉ์๋ ๋ก์ง ๋ณ๊ฒฝ ๋ฐ ์ผ๋ถ API ๋ฌธ์ํ. * refactor/OPS-287 : NewsServiceTest API๋ฅผ ํธ์ถํ๋ ๋ฐฉ์์ผ๋ก ๋ณ๊ฒฝ. * Ops 226 be feat ์๋ฃ ๋ฑ๋ก (#44) * refactor/OPS-283 : datasource ์ํฐํฐ ์์ * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- Co-authored-by: EpicFn <[email protected]> * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * feat/OPS-226 : ์๋ฃ ๋ฑ๋ก ๊ตฌํ * refactor/OPS-226 : ๋ฉ์๋ ๋ช ์์ --------- Co-authored-by: Hyeok Jin Kim <[email protected]> Co-authored-by: EpicFn <[email protected]> * Ops 215 be feat ์๋ฃ ์ญ์ (#46) * refactor/OPS-283 : datasource ์ํฐํฐ ์์ * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- Co-authored-by: EpicFn <[email protected]> * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * feat/OPS-226 : ์๋ฃ ๋ฑ๋ก ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ --------- Co-authored-by: Hyeok Jin Kim <[email protected]> Co-authored-by: EpicFn <[email protected]> * [feat/OPS-293] LiveBlocks๋ฅผ ์ํ React-flow ๋ฐ์ดํฐ ๊ด๋ฆฌ ๋๋ฉ์ธ ์ค๊ณ ์๋ฃ. ํ ์คํธ ์ถ๊ฐ. (#47) * feat/OPS-293 : LiveBlocks๋ฅผ ์ํ React-flow ๋ฐ์ดํฐ ๊ด๋ฆฌ ๋๋ฉ์ธ ์ค๊ณ ์๋ฃ. ํ ์คํธ ์ถ๊ฐ. * feat/OPS-293 : folder ํ ์คํธ์ @transactional ์ถ๊ฐ. * feat/OPS-293 : MemberServiceTest ์์ #1 * feat/OPS-293 : MemberServiceTest ์์ #2 * feat/OPS-293 : Folder ํ ์คํธ์ ActiveProfile(test) ์ถ๊ฐ. * feat/OPS-293 : ํ ์คํธ์ ๋ฌด๊ฒฐ์ฑ ๊ฒ์ฆ์ ์ํ @afterall, @AfterEach ์ถ๊ฐ. * feat/OPS-293 : ์ผ๋ถ ์์ . * feat/OPS-293 : ์ง์ง ๋ง์ง๋ง ์์ . * [chore/ops-132] CI/CD ํ์ดํ๋ผ์ธ ๊ตฌ์ถ (#43) * chore/OPS-133 : CI ํ์ดํ๋ผ์ธ ๊ตฌ์ถ * chore: ํ ์คํธ/์ด์ ํ๊ฒฝ์ฉ GitHub Actions Terraform ์๋ ์ธํ๋ผ ์ ์ฉ ์ํฌํ๋ก์ฐ ์ถ๊ฐ * chore : ํ๊ฒฝ๋ณ์๋ก test/prod ์๋ฒ ๋ถ๋ฆฌ ๊ฐ๋ฅํ๋๋ก ์ค์ * chore/OPS-135 : CD ์ํฌํ๋ก์ฐ ์ถ๊ฐ * chore: CI ํ CD ์คํ๋๋๋ก ์ค์ * chore : CI ์ํฌํ๋ก์ฐ job ๋ถ๋ฆฌ(ํ ์คํธ,๋น๋/๋์ปค ๋น๋,ghcr push) * chore : docker build jobs์์ checkout ๋จ๊ณ ์ถ๊ฐ * chore: CI ์ํฌํ๋ก์ฐ job ๊ตฌ๋ถ ์์ฐ * chore : develop/main ๋ธ๋์น์ ๋ฐ๋ผ CI/CD ์ํฌํ๋ก์ฐ ๋ถ๋ฆฌ * chore : Spring Boot Acutator ์์กด์ฑ ์ถ๊ฐ * chore: Actions์์ SSH ์ ์ ํ docker ์คํ ๊ถํ ๊ฐ๋๋ก ์ค์ * chore: ์ปจํ ์ด๋ ์คํ ๋ก๊ทธ ํฐ๋ฏธ๋์ ์ถ๋ ฅ ์ค์ * chore : ํฌ์ค์ฒดํฌ ์ค์ * chore: secrets ์ง์ ssh ํ๊ฒฝ ๋ณ์๋ก ์ ๋ฌ * chore: ํ๊ฒฝ๋ณ์ ์ง์ docker run์ ๋ฃ๊ธฐ * chore: spdocker run ์์ ring profile ์ ๊ฑฐ * chore: nginx ์ค์ * chore: test-cd ์์ * chore: test-cd ์์ 2 * chore: ghcr ๋ก๊ทธ์ธ ํ ํฐ ์์ * chore: ๋์ปค ์ด๋ฏธ์ง pull ์ด๋ฆ ์์ * chore: ssh ๋ด ์์ ํ ghcr ๋ก๊ทธ์ธ * chore : ์ด๋ฏธ pullํ ์ด๋ฏธ์ง์ run ์ด๋ฏธ์ง ์ด๋ฆ ์ผ์น์ํค๊ธฐ * chore: mysql driver ์์กด์ฑ ์ถ๊ฐ * chore : ํฌ์ค์ฒดํฌ ์์ฒญ ์คํ๋ง ์ํ๋ฆฌํฐ ํํฐ์ ๊ฑธ๋ฆฌ์ง ์๋๋ก ์ค์ * chore: nginx ํฌํธ ์ค์์นญ ์ค์ * chore: nginx ํฌํธ ์ค์์นญ ์ค์ ์์ * chore: nginx ํฌํธ ์ค์์นญ ์ค์ ์์ 2 * chore: ์ด์์๋ฒ CD ์ํฌํ๋ก์ฐ ์์ * chore : prod-server ์ํฌํ๋ก์ฐ ํ์ฑํ ๊ฒฝ๋ก ์ค์ * chore : test commit ๋์ค์ ์ง์ฐ๊ธฐ * [Feat/OPS-214] ์คํ์ด์ค ๋ฉค๋ฒ ๊ด๋ฆฌ (#50) * feat/OPS-227 : ์คํ์ด์ค ๋ฉค๋ฒ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-227 : ์คํ์ด์ค ๋ชฉ๋ก ๋ฐํ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-251 : ๊ถํ ๋ณ๊ฒฝ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-214 : ๊ถํ ๋ณ๊ฒฝ ์๋ํฌ์ธํธ ๊ตฌํ * fix/OPS-214 : ๋จ์ ๋ฉ์ธ์ง ์ค๋ฅ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-214 : ๋ก์ง ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-251 : globalExceptionHandler์ ์ญ์ง๋ ฌํ ์คํจ ์๋ฌ ์ถ๊ฐ * refactor/OPS-214 : ๋น์ฆ๋์ค ๋ก์ง์ ์๋น์ค ๊ณ์ธต์ ์ผ์ * feat/OPS-231 : ์คํ์ด์ค ์ด๋ ์ปจํธ๋กค๋ฌ ํ ์คํธ์ผ์ด์ค ์์ฑ * feat/OPS-231 : ์คํ์ด์ค ์ด๋ ๋ก์ง ์์ฑ * feat/OPS-231 : ์คํ์ด์ค์ด๋ ์๋น์ค ๋น ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * feat/OPS-228 : ํ์ ํด์ถ ์ปจํธ๋กค๋ฌ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feeat/OPS-229 : ํ์ ํด์ถ ๊ตฌํ ์๋ฃ * fix : ๊ธฐ์กด ํ ์คํธ ์ผ์ด์ค ์ผ๊ด์ฑ ์๊ฒ ์์ * feat : ๋ฉค๋ฒ ํด์ถ ์๋น์ค ํ ์คํธ ์ฝ๋ ์์ฑ * refactor : DTO ํจํค์ง ๋ณ๊ฒฝ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ์ปจํธ๋กค๋ฌ ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ๋ก์ง ์์ฑ * refactor : space ๋๋ฉ์ธ dto ํจํค์ง ๋ณ๊ฒฝ * feat/OPS-227 : ์คํ์ด์ค ๋ฉค๋ฒ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-227 : ์คํ์ด์ค ๋ชฉ๋ก ๋ฐํ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-251 : ๊ถํ ๋ณ๊ฒฝ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-214 : ๊ถํ ๋ณ๊ฒฝ ์๋ํฌ์ธํธ ๊ตฌํ * fix/OPS-214 : ๋จ์ ๋ฉ์ธ์ง ์ค๋ฅ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-214 : ๋ก์ง ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-251 : globalExceptionHandler์ ์ญ์ง๋ ฌํ ์คํจ ์๋ฌ ์ถ๊ฐ * refactor/OPS-214 : ๋น์ฆ๋์ค ๋ก์ง์ ์๋น์ค ๊ณ์ธต์ ์ผ์ * feat/OPS-231 : ์คํ์ด์ค ์ด๋ ์ปจํธ๋กค๋ฌ ํ ์คํธ์ผ์ด์ค ์์ฑ * feat : ์ต์ ์ฌํญ ๋ฐ์ * feat/OPS-231 : ์คํ์ด์ค์ด๋ ์๋น์ค ๋น ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * feat/OPS-228 : ํ์ ํด์ถ ์ปจํธ๋กค๋ฌ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feeat/OPS-229 : ํ์ ํด์ถ ๊ตฌํ ์๋ฃ * fix : ๊ธฐ์กด ํ ์คํธ ์ผ์ด์ค ์ผ๊ด์ฑ ์๊ฒ ์์ * feat : ๋ฉค๋ฒ ํด์ถ ์๋น์ค ํ ์คํธ ์ฝ๋ ์์ฑ * refactor : DTO ํจํค์ง ๋ณ๊ฒฝ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ์ปจํธ๋กค๋ฌ ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ๋ก์ง ์์ฑ * refactor : space ๋๋ฉ์ธ dto ํจํค์ง ๋ณ๊ฒฝ --------- Co-authored-by: EpicFn <[email protected]> * refactor/OPS-308 : ๋๋ฉ์ธ ๋ถ๋ฆฌ & CI ์ํฌํ๋ก์ฐ์ application-secrets-server.yml ์ถ๊ฐ. (#52) * Ops 255 be feat ์๋ฃ ์์ (#54) * refactor/OPS-283 : datasource ์ํฐํฐ ์์ * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- Co-authored-by: EpicFn <[email protected]> * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * feat/OPS-226 : ์๋ฃ ๋ฑ๋ก ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-255 : ์๋ฃ ์ด๋ ๋ฐ ์์ ๊ตฌํ --------- Co-authored-by: Hyeok Jin Kim <[email protected]> Co-authored-by: EpicFn <[email protected]> * feat/OPS-289 : dataprocessor ์๋น์ค ์์ฑ (#59) * fix/OPS-318 : proxy host ์ค์์นญรฌ๏ฟฝ ssl ์ธ์ฆ์ ์ ์ง (#60) * [refactor/OPS-310] redirect url ๋ณ๊ฒฝ (#53) * refactor/OPS-310 : redirect-url ๋ณ๊ฒฝ. * refactor/OPS-310 : ์์ ์์ . * refactor/OPS-310 : ๋ ํ๋์ ์์ ์์ . * refactor/OPS-310 : ํฐ ์์ . * refactor/OPS-310 : ํ ์คํธ * refactor/OPS-310 : ์์ฒญ ์ฌํญ ๋ฐ์. * refactor/OPS-310 : ์์ฒญ ์ฌํญ ๋ฐ์ #2 * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ (#64) * [refactor/OPS-323] News API ์กฐํ ๋ก์ง ์์ . (#65) * ๋ฐฐํฌ ํ ์คํธ #2 * ๋ก์ง ์์ ํ ์คํธ * ๋ก์ง ์์ ํ ์คํธ #2 * refactor/OPS-322 : source ์นผ๋ผ๋ช ์์ (#68) * refactor/OPS-322 : source ์นผ๋ผ๋ช ์์ * refactor/OPS-322 : source ์นผ๋ผ๋ช ์์ * feat/OPS-321 : dataProcessorService์์ ์์ฝ ๋ก์ง ์์ฑ (#69) * [fix/OPS-317] CI/CD ํ์ดํ๋ผ์ธ ์ด๋ฒคํธ ๋ถ๋ฆฌ (#66) * fix : prod-server nginx ์ ๋ณด ์ถ๋ ฅ ์ ๊ฑฐ * fix : prod-server CD ์ํฌํ๋ก์ฐ main์ push๋ ๋ ์คํ๋๋๋ก ์์ * fix : test-server CI๋ pr์ develop์ ์คํ, CD๋ push๋ ๋ ์คํ * fix : test-server CI ์ํฌํ๋ก์ฐ์์ CD ๋ถ๋ถ ์ ๊ฑฐ * chore : ๋น๋์ aws๊ด๋ จ ์ ๋ณด application-secret.yml์ ๋ค์ด๊ฐ๋๋ก ์ค์ (#73) * chore : S3 ์ฌ์ฉ์ ์ํด ๋น๋์ AWS ์ ๋ณด application-secrets.yml์ ์ถ๊ฐ๋๋๋ก ์ค์ * chore : ์ญํ ์ S3 ์ ๊ทผ ์ ์ฑ ๋ถ์ฐฉ ํ๋๋ก ์ค์ * chore : รฃyml์ ์ถ๊ฐ์ ๋ณด ๋ฃ๋๋ก ์ค์ * [Feat/OPS-275] ์คํ์ด์ค ์ธ๋ค์ผ ์ด๋ฏธ์ง ์ ์ฅ (#71) * chore : S3 ํ๊ฒฝ ์ค์ * feat : S3Service ๊ตฌ์ฑ * chore : multipart ๋ฐ์ดํฐ ํฌ๊ธฐ ์ค์ * feat : S3 ์ ๋ก๋ ํ ์คํธ์ฉ ์๋ํฌ์ธํธ ์์ฑ * feat : S3 ์ฐ๋ ์๋ฃ * feat : space entity์ imageUrl ํญ๋ชฉ ์ถ๊ฐ * feat : ์ธ๋ค์ผ ์บก์ฒ ํ ์คํธ์ฉ * feat : ์ธ๋ค์ผ ์ดฌ์ ํ ์คํธ ์๋ํฌ์ธํธ ์์ฑ * feat : ์คํ์ด์ค ์ธ๋ค์ผ ๊ฐฑ์ API ์์ฑ * feat : ์คํ์ด์ค ์ด๋ฏธ์ง ๊ฐฑ์ ๊ธฐ๋ฅ ์์ฑ * feat : ์คํ์ด์ค ๋ชฉ๋ก ๋ฐํ ์ ์ธ๋ค์ผ url ๊ฐ์ด ๋ฐํ * feat : ์คํ์ด์ค ๋จ๊ฑด ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat : ์คํ์ด์ค ๋จ๊ฑด ์กฐํ ๊ตฌํ * feat : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ํ์ด์ง ๊ธฐ๋ฅ ์ถ๊ฐ --------- Co-authored-by: EpicFn <[email protected]> * [feat/OPS-324] ํฌ๋กฌ ํ์ฅ ํ๋ก๊ทธ๋จ ์์ ๋ก๊ทธ์ธ ๋ถ๊ธฐ & ์์ ๋ก๊ทธ์ธ ํ ์คํธ API ์ถ๊ฐ. (#70) * feat/OPS-324 : ํ์ฅ ํ๋ก๊ทธ๋จ ๋ถ๊ธฐ ๋ฐ ์์ ๋ก๊ทธ์ธ ํ ์คํธ API ์ถ๊ฐ. * feat/OPS-324 : ํ ์คํธ ๋ก์ง ์ผ๋ถ ์์ . * feat/OPS-324 : ํ ์คํธ ๋ก์ง ์ผ๋ถ ์์ . #2 * feat/OPS-324 : ํ ์คํธ ์๋ฃ, ํ ์คํธ ์ฝ๋ ์ ๊ฑฐ. * feat/OPS-324 : ๋ก๊ทธ์ธ ๋ถ๊ธฐ ์์ . * feat/OPS-324 : state ์ ๋ณด๋ฅผ ์ ์ฅํ๋ resolver ์ถ๊ฐ. * feat/OPS-324 : session ๋ฑ๋ก์ ์ํ OAuth2LoginSourceFilter ํด๋์ค ์ถ๊ฐ. * feat/OPS-324 : ํด๊ฒฐ * fix : ci ์ secrets ์์ S3 ๊ด๋ จ ์ํฌ๋ฆฟ ๊ฐ ์ญ์ ํ๋๋ก ๋ณ๊ฒฝ(๋ฒํท๋ช ์ ์ธ) (#74) * fix : ci ์ secrets ์์ S3 ๊ด๋ จ ์ํฌ๋ฆฟ ๊ฐ ์ญ์ ํ๋๋ก ๋ณ๊ฒฝ(๋ฒํท๋ช ์ ์ธ) * fix : CI ์คํ ์์ * fix : build ๋จ๊ณ์์ testest๋ฅผ ์ํํ์ง ์๋๋ก ๋ณ๊ฒฝ --------- Co-authored-by: EpicFn <[email protected]> * [feat/OPS-198] ์์นด์ด๋ธ ์ ๋ณด๋ก ๋ด์ค ๋ชฉ๋ก ์กฐํ (#75) * feat/OPS-198 : ์์นด์ด๋ธ ๊ธฐ๋ฐ ๋ด์ค ์กฐํ ๊ตฌํ. * feat/OPS-198 : ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ. * feat/OPS-265 : LLM-ํ์ฉ-๋ฐ์ดํฐ-์ ์ ํ-์-๊ธฐ์กด-์์นด์ด๋ธ์-ํ๊ทธ-์ฐ๋ (#77) * refactor/OPS-319: ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ (#76) * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * fix : SpringDoc๊ณผ Spring AI ๊ฐ ์์กด์ฑ ์ถฉ๋ ํด๊ฒฐ (#79) * [Feat/OPS-327] ์๋ฃ ๋ฑ๋ก llm ์ฐ๋ (#78) * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-327 : ์๋ฃ ๋ฑ๋ก LLM ์ฐ๋ * [feat/OPS-328] ์ธ์ฆ/์ธ๊ฐ ๋ก์ง ๋ณ๊ฒฝ (#80) * feat/OPS-328 : RefreshToken์ ์๋ฒ์์ ์ ์ฅํ๋๋ก ๋ณ๊ฒฝ. API ์ผ๋ถ ์์ . * feat/OPS-328 : ํ์ฅ ํ๋ก๊ทธ๋จ ๋ก๊ทธ์ธ ๋ฉ์๋ ์ถ๊ฐ ๋ฐ ๋ฐ์ดํฐ ์บ์ฑ ๋ฉ์๋ ์ถ๊ฐ. * [refactor/OPS-337] ์๊ตฌ์ฌํญ ๋ฐ์ ๋ฐ ์ผ๋ถ ๋ก์ง ์์ . (#81) * refactor/OPS-337 : ํ๋ก ํธ ์๊ตฌ์ฌํญ ๋ฐ์ ๋ฐ ์๋ฌ ์์ . * refactor/OPS-337 : ํ ์คํธ ์ผ์ด์ค ์์ . * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ (#82) * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : mock ์ถ๊ฐ๋ก ์ธํ testcase ์์ * [feat/OPS-338] ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ (#83) * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : mock ์ถ๊ฐ๋ก ์ธํ testcase ์์ * refactor/OPS-338 : Dev ํ ํฐ ๋ฐ๊ธ ์ปจํธ๋กค๋ฌ ์ถ๊ฐ * [Feat/OPS-326] ๋์๋ณด๋ ๋ฐ์ดํฐ ์ ์ฅ ์ฒด๊ณ ๊ตฌ์ถ (#85) * refactor : graph ๋๋ฉ์ธ์ dashboard ๋๋ฉ์ธ์ผ๋ก ์์ , dashboard ์ํฐํฐ ์์ฑ * feat : ์คํ์ด์ค ๋จ๊ฑด ์กฐํ ์ ๋์๋ณด๋ id๋ ํจ๊ป ๋ฐํ * refactor : API ๋ช ๋ณ๊ฒฝ * dashboard ๊ธฐ๋ฐ์ผ๋ก ์ ์ฅ/์กฐํ ๋๋๋ก ๋ณ๊ฒฝ * refactor : ํ ์คํธ ์ฝ๋ ์์ * fix : ๋ฐํ ๋ฉ์ธ์ง ์์ * feat : ์๋ช ๊ฒ์ฆ ๋ก์ง ๊ตฌํ * refactor : signature ์๋น์ค ๋ถ๋ฆฌ * fix : ์คํ ์์ * fix : CI ํ์ดํ๋ผ์ธ ์์ --------- Co-authored-by: EpicFn <[email protected]> * [feat/OPS-329] Sentry๋ฅผ ํตํ ๋ชจ๋ํฐ๋ง ํ๊ฒฝ ๊ตฌ์ถ. (#86) * feat/OPS-329 : Sentry๋ฅผ ํตํ ๋ชจ๋ํฐ๋ง ํ๊ฒฝ ๊ตฌ์ถ. * feat/OPS-329: ์ถ๊ฐ๋ก ํ๋ก ํธ ์๊ตฌ ์ฌํญ ๋ฐ์. * refactor/OPS-353 : ๋ถ๋ฆฌ ์๋ฃ. (#87) * [refactor/OPS-354] ํ ์คํธ ์ผ์ด์ค ์ฌ์ฉ ํ๋กํ ๋ณ๊ฒฝ. (#88) * refactor/OPS-354 : ํ ์คํธ ์ผ์ด์ค ์ฌ์ฉ ํ๋กํ ๋ณ๊ฒฝ. * refactor/OPS-354 : ์ด๋๋ ์๋ผ? * refactor/OPS-355 : ์๊ตฌ ์ฌํญ ๋ฐ์. (#91) * feat/OPS-358: Redis ์์กด์ฑ ์ถ๊ฐ ๋ฐ RedisConfig ์ค์ ์๋ฃ. AuthResultData ์ง๋ ฌํ ๋ฐ AuthResult ํด๋์ค์ TTL ๋์ . (#92) * feat/OPS-356 : ๋ค์ด๋ฒ ๋ธ๋ก๊ทธ ํฌ๋กค๋ฌ ์์ฑ (#93) * [feat/OPS-252] ์กฐ๊ฑด๋ณ ์๋ฃ ๊ฒ์ (#89) * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-327 : ์๋ฃ ๋ฑ๋ก LLM ์ฐ๋ * refactor/OPS-252 : ์กฐ๊ฑด๋ณ ์๋ฃ ๊ฒ์ ๊ตฌํ * refactor/OPS-252 : ์กฐ๊ฑด๋ณ ์๋ฃ ๊ฒ์ * fix : ์คํ์ด์ค, ์ฌ์ฉ์ ๋ชฉ๋ก ๋ฐํ ์ ํญ์ id ์ค๋ฆ์ฐจ์ ์ ๋ ฌ (#94) Co-authored-by: EpicFn <[email protected]> * IllegalStateException(๋์์ฑ ๋ฌธ์ )๊ด๋ จ ์ฒ๋ฆฌ ๋ฉ์๋ ์ถ๊ฐ. (#95) * [fix/OPS-362] ์๊ตฌ ์ฌํญ ๋ฐ์ (#96) * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์. * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#2 * [feat/OPS-341] ๋ฒจ๋ก๊ทธ ํฌ๋กค๋ฌ ์์ฑ (#90) * feat/OPS-341 : Velog ํฌ๋กค๋ฌ ์์ฑ * fix : createDate,modifyDate ์๋ ์ ์ฉ๋๋๋ก ์ค์ * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#3 (#97) * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#4 (#98) * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#5 (#99) * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#6 (#100) * [refactor/OPS-360] folder&datasource ๋ฆฌํํ ๋ง (#101) * refactor/OPS-360 : OpenAPI ์ ๋ํ ์ด์ ์ถ๊ฐ * refactor/OPS-360 : NoResultException ์์ธ ๋ถ๋ฆฌ * refactor/OPS-360 : param ์ถ๊ฐ * refactor/OPS-360 : param ์ถ๊ฐ * refactor/OPS-360 : default ํด๋ CRUD ๋ก์ง ์์ * refactor/OPS-360 : ํด๋ ๋ฆฌ์คํธ๋ ํธ์ถ ๋ก์ง ์์ * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#7 (#102) * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#8 (#103) * hotfix/OPS-346 : ํ์ผ ์กฐํ ์์ (#104) * [feat/OPS-365 ] soft delete + ํด์งํต ์กฐํ ๊ตฌํ (#105) * feat/OPS-365 : soft delete + ํด์งํต ์กฐํ ๊ตฌํ * refactor/OPS-246 : ์๊ตฌ์ฌํญ ๋ฆฌํฉํ ๋ง * chore : rabbitmq ํ๊ฒฝ์ค์ (#106) * chore : rabbitmq ๋ก์ปฌ ๊ฐ๋ฐ ํ๊ฒฝ ์ค์ * chore : rabbitmq ๊ด๋ จ springboot ํ๊ฒฝ ์ค์ * chore: rabbitmq ์์กด์ฑ ์ถ๊ฐ * [Feat/OPS-344] message queue ๊ตฌํ (#107) * chore : RabbitMQ ํ๊ฒฝ ์ค์ * chore : CI ํ์ดํ๋ผ์ธ์์ RabbitMQ ์ปจํ ์ด๋๋ฅผ ๋์์ ์ฌ์ฉํ๋๋ก ์ค์ * new : RabbitMQ ์ค์ ํด๋์ค, dto ์์ฑ * feat : producer method ์์ฑ * feat : ๋ฉ์ธ์ง ํ ๊ตฌํ ์๋ฃ * feat : ๋ฐ์ดํฐ ์ ์ฅ ์์ฒญ ํ ์คํธ ์ผ์ด์ค ์์ * feat : ConsumerTest ์ฝ๋ ์ถ๊ฐ * fix : ์ ์ฅ ํ ์คํธ ์ผ์ด์ค ์ฑ๊ณต * fix : ํ ์คํธ ์ฝ๋ ์์ ์ค * fix : ํ ์คํธ ์ผ์ด์ค ์ฑ๊ณต * feat : dlq ๋์ * feat : ๋ฐ์ดํฐ ์์ ๋ณด์ฅ์ ์ํด version ์ถ๊ฐ * refactor : MQConfig ํ์ผ ์์น ๋ณ๊ฒฝ * chore : RabbitMQ ํ๊ฒฝ ์ค์ # Conflicts: # docker-compose.yml # src/main/resources/application.yml * chore : CI ํ์ดํ๋ผ์ธ์์ RabbitMQ ์ปจํ ์ด๋๋ฅผ ๋์์ ์ฌ์ฉํ๋๋ก ์ค์ * new : RabbitMQ ์ค์ ํด๋์ค, dto ์์ฑ * feat : producer method ์์ฑ * feat : ๋ฉ์ธ์ง ํ ๊ตฌํ ์๋ฃ * feat : ๋ฐ์ดํฐ ์ ์ฅ ์์ฒญ ํ ์คํธ ์ผ์ด์ค ์์ * feat : ConsumerTest ์ฝ๋ ์ถ๊ฐ * fix : ์ ์ฅ ํ ์คํธ ์ผ์ด์ค ์ฑ๊ณต * fix : ํ ์คํธ ์ฝ๋ ์์ ์ค * fix : ํ ์คํธ ์ผ์ด์ค ์ฑ๊ณต * feat : dlq ๋์ * feat : ๋ฐ์ดํฐ ์์ ๋ณด์ฅ์ ์ํด version ์ถ๊ฐ * refactor : MQConfig ํ์ผ ์์น ๋ณ๊ฒฝ * fix : ์ต์ ์ฌํญ ๋ฐ์ * fix : copilot review ๋ฐ์ * feat : Dashboard์์ graph ์ฐธ์กฐ ๋ฐฉ์ EAGER -> LAZY ๋ก ๋ณ๊ฒฝ * CI ์คํจํด์ ๋ค์ EAGER๋ก ๋ณ๊ฒฝ * fix : ๋ค์ LAZY๋ก ๋ณ๊ฒฝ --------- Co-authored-by: EpicFn <[email protected]> * [Refactor/OPS-373] ์๋ฃ ์กฐํ ๊ฒ์ ์๊ตฌ์ฌํญ ์์ (#108) * refactor/OPS-373 : ์๋ฃ ์ด๋ฆ unique ์์ฑ ์ญ์ * refactor/OPS-373 : ์๋ฃ ์์ ๊ฐ๋ฅ ์นผ๋ผ ์ถ๊ฐ * refactor/OPS-373 : ๋ช ์์ null๊ณผ ๋ฏธ์ ๋ฌ ๊ตฌ๋ถ * [Feat/OPS-376] ์คํ์ด์ค ๋ชฉ๋ก ์ฐธ์ฌ ์ธ์ ๋ฐํ api ๊ตฌ์ฑ (#109) * refactor : dto ์ด๋ฆ ์ผ๋ถ ๋ณ๊ฒฝ * feat : ๊ตฌํ ์๋ฃ * feat : ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * fix : ํ ์คํธ ์ผ์ด์ค ์์ --------- Co-authored-by: EpicFn <[email protected]> * [Refactor/OPS-290] ๋ฐ์ดํฐ์์ค ์ ์ ํ ๊ธฐ๋ฅ ๊ณ ๋ํ (#112) * refactor/OPS-290 : ๋ฐ์ดํฐ์์ค ์ ์ ํ ๊ธฐ๋ฅ ๊ณ ๋ํ * [Feat/OPS-346] ๊ณต์ ํด๋ ๊ด๋ฆฌ (#113) * refactor/OPS-360 : OpenAPI ์ ๋ํ ์ด์ ์ถ๊ฐ * refactor/OPS-360 : NoResultException ์์ธ ๋ถ๋ฆฌ * refactor/OPS-360 : param ์ถ๊ฐ * refactor/OPS-360 : param ์ถ๊ฐ * refactor/OPS-360 : default ํด๋ CRUD ๋ก์ง ์์ * refactor/OPS-360 : ํด๋ ๋ฆฌ์คํธ๋ ํธ์ถ ๋ก์ง ์์ * refactor/OPS-346 : ๊ณต์ ํด๋ ๊ด๋ฆฌ * feat/OPS-365 : soft delete + ํด์งํต ์กฐํ ๊ตฌํ * feat/OPS-346 : ๊ณต์ ํด๋ ๊ด๋ฆฌ * feat/OPS-346 : ๊ณต์ ํด๋ ๊ด๋ฆฌ * refactor/OPS-346 : ๊ฐ์ธ / ๊ณต์ ํณ๋ ๊ด๋ฆฌ ๋ถ๋ฆฌ * refactor/OPS-346 : ๊ฒ์ ๊ธฐ๋ฅ ์ถ์ฒ ๋๋ฝ ์์ * feat : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ์ ์์ฑ ์ผ์๋ ๋ฐํ (#114) Co-authored-by: EpicFn <[email protected]> * [feat/OPS-377] ์ด์/ํ ์คํธ ์๋ฒ ๋ถ๋ฆฌ ์์ (#115) * feat/OPS-377 : ํ ์คํธ/์ด์ ํ๊ฒฝ ๋ถ๋ฆฌ * feat/OPS-377 : ํ ์คํธ/์ด์ ํ๊ฒฝ ๋ถ๋ฆฌ #2 * feat/OPS-377 : ํ ์คํธ/์ด์ ํ๊ฒฝ ๋ถ๋ฆฌ #3 * feat/OPS-377 : ํ ์คํธ/์ด์ ํ๊ฒฝ ๋ถ๋ฆฌ #4 * [Fix/OPS-378] ๋์๋ณด๋ ํ์ entity ์์ (#117) * fix : node, edge dto ์์ * fix : ํ ์คํธ ์ผ์ด์ค ์์ * fix : ํ ์คํธ ์์ ์๋ฃ * fix : ์คํ ์์ * fix : ์คํ ์ถ๊ฐ ์์ ; --------- Co-authored-by: EpicFn <[email protected]> * [Feat/OPS-379] liveblocks ์ฐ๋ (#118) * new : Liveblock API ํธ์ถ์ ์ํ Client ๋น ์์ฑ * feat : ์คํ์ด์ค ์์ฑ/์ญ์ ์ liveblocks room ๋ ํจ๊ป ์์ฑ/์ญ์ * fix : test ์ mock ๋น ์ฌ์ฉ * feat : jwt ๋ฐ๊ธ ๋ก์ง ๊ตฌํ --------- Co-authored-by: EpicFn <[email protected]> * [Feat/OPS-246] ๊ณต์ ํ์ผ ๊ด๋ฆฌ (#119) * refactor/OPS-360 : OpenAPI ์ ๋ํ ์ด์ ์ถ๊ฐ * refactor/OPS-360 : NoResultException ์์ธ ๋ถ๋ฆฌ * refactor/OPS-360 : param ์ถ๊ฐ * refactor/OPS-360 : param ์ถ๊ฐ * refactor/OPS-360 : default ํด๋ CRUD ๋ก์ง ์์ * refactor/OPS-360 : ํด๋ ๋ฆฌ์คํธ๋ ํธ์ถ ๋ก์ง ์์ * refactor/OPS-346 : ๊ณต์ ํด๋ ๊ด๋ฆฌ * feat/OPS-365 : soft delete + ํด์งํต ์กฐํ ๊ตฌํ * feat/OPS-346 : ๊ณต์ ํด๋ ๊ด๋ฆฌ * feat/OPS-346 : ๊ณต์ ํด๋ ๊ด๋ฆฌ * feat/OPS-246 : ๊ณต์ ํ์ผ ๊ด๋ฆฌ * refactor/OPS-346 : ๊ฐ์ธ / ๊ณต์ ํณ๋ ๊ด๋ฆฌ ๋ถ๋ฆฌ * refactor/OPS-346 : ๊ฐ์ธ / ๊ณต์ ํ์ผ ๊ด๋ฆฌ ๋ถ๋ฆฌ * refactor/OPS-346 : ๊ฒ์ ๊ธฐ๋ฅ ์ถ์ฒ ๋๋ฝ ์์ * feat/OPS-246 : ๊ฐ์ธ / ๊ณต์ ํ์ผ ๊ด๋ฆฌ ๋ถ๋ฆฌ * feat/OPS-246 : api ์์ฒญ ์์ * feat/OPS-246 : api ์์ฒญ ์์ - request ์ด๋ฆ ํต์ผ * refactor/OPS-246 : ๋จธ์ง * refactor/OPS-246 : ๋จธ์ง * [Feat/OPS-388] ๋ค๊ฑด์ญ์ DELETE ๋ณธ๋ฌธ ์์ (#122) * refactor/OPS-388 : ๋ค๊ฑด์ญ์ DELETE ๋ณธ๋ฌธ ์์ * refactor/OPS-388 : ๋ค๊ฑด์ญ์ DELETE ํ ์คํธ ์ผ์ด์ค ์์ * Hotfix/์คํ์ด์ค์ด๋๋ชฉ๋ก ๋ฐํ ์ invite id ํฌํจ (#123) * fix : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์ inviteId ๋ฐํํ๋๋ก ๋ณ๊ฒฝ * fix : ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ --------- Co-authored-by: EpicFn <[email protected]> * [Feat/OPS-379] liveblocks ์ฐ๋ (#124) * new : Liveblock API ํธ์ถ์ ์ํ Client ๋น ์์ฑ * feat : ์คํ์ด์ค ์์ฑ/์ญ์ ์ liveblocks room ๋ ํจ๊ป ์์ฑ/์ญ์ * fix : test ์ mock ๋น ์ฌ์ฉ * feat : jwt ๋ฐ๊ธ ๋ก์ง ๊ตฌํ * fix : SpaceArchiveDataSourceControllerTest์์ liveblocks ๋น mock ์ฒ๋ฆฌ * fix : ์คํ ์์ --------- Co-authored-by: EpicFn <[email protected]> * refactor : secrets๊ฐ ์ปจํ ์ด๋ ์คํ์ ํ๊ฒฝ๋ณ์๋ก ์ฃผ์ ๋๋๋ก ์์ (#120) * refactor: ๋น๋ ์ secrets.yml ํ์ผ ์ญ์ * refactor : ํ ์คํธ ์๋ฒ ํ๊ฒฝ๋ณ์ ์ฃผ์ ์ค์ * refactor : ์ด์์๋ฒ ํ๊ฒฝ๋ณ์ ์ฃผ์ ์ค์ * refactor : ์ด์ํ๊ฒฝ๋ณ YML ๋ถ๋ฆฌ ๋ฐ ๋ฐฐํฌ ํ๊ฒฝ ์ค์ ๊ตฌ์กฐ ๊ฐ์ * refactor : ๋ก์ปฌ(dev,test).yml ๋ณต๊ตฌ * refactor : ๋น๋์ ํ ์คํธ secrets.yml V2๋ก ๋ณ๊ฒฝ * refactor: gradle ํ ์คํธ์ ํ๊ฒฝ๋ณ์๋ก ์ค์ ๊ฐ ์ฃผ์ * refactor: ymlํ์ผ ๋ค์ฌ์ฐ๊ธฐ ์์ * refactor: yml ํ๋ ์ด์คํ๋ ๋ค์ด๋ฐ ๊ท์น ์ผ๊ด์ฑ ์ ์งํ๋๋ก ์์ * [Feat/ops-379] feat liveblocks ์ฐ๋ (#127) * new : Liveblock API ํธ์ถ์ ์ํ Client ๋น ์์ฑ * feat : ์คํ์ด์ค ์์ฑ/์ญ์ ์ liveblocks room ๋ ํจ๊ป ์์ฑ/์ญ์ * fix : test ์ mock ๋น ์ฌ์ฉ * feat : jwt ๋ฐ๊ธ ๋ก์ง ๊ตฌํ * fix : SpaceArchiveDataSourceControllerTest์์ liveblocks ๋น mock ์ฒ๋ฆฌ * fix : ์คํ ์์ * new : Liveblock API ํธ์ถ์ ์ํ Client ๋น ์์ฑ # Conflicts: # src/main/java/org/tuna/zoopzoop/backend/global/clients/liveblocks/LiveblocksClient.java --------- Co-authored-by: EpicFn <[email protected]> * fix : ์คํ ์์ (#128) Co-authored-by: EpicFn <[email protected]> * [Hotfix] ํ์ดํ๋ผ์ธ ์คํ ์์ (#129) * fix : ์คํ ์์ * fix : bucket ์คํ ์์ * fix: S3 ๊ด๋ จ ๊ฐ ๋กค๋ฐฑ --------- Co-authored-by: EpicFn <[email protected]> * refactor: s3 prefix separation (#131) * refactor: S3 prefix ํ๊ฒฝ๋ณ์ ๋ถ๋ฆฌ ๋ฐ server ํ๋กํ์ผ ์ค์ ์ถ๊ฐ * fix: cd ์คํ ์์ * fix : docker run ์ฃผ์ ์์ฐ * refactor: s3 prefix separation (#132) * refactor: S3 prefix ํ๊ฒฝ๋ณ์ ๋ถ๋ฆฌ ๋ฐ server ํ๋กํ์ผ ์ค์ ์ถ๊ฐ * fix: cd ์คํ ์์ * fix : docker run ์ฃผ์ ์์ฐ * fix: bucket ์คํ ์์ * fix: ์คํ ์ ๊ฑฐ * [fix/OPS-390] Secret ๊ฐ ๊ด๋ จ ์ผ๋ถ ์์ (#126) * fix/OPS-390 : secret ํ ํ๋ฆฟ ๋ฐ ์์ ์ฌํญ์ ๋ง๊ฒ ์ฝ๋ ๋ณ์๋ช ๋ณ๊ฒฝ. * feat/OPS-390: NEWS API ์์ ์ถ๊ฐ ์ฌํญ ๋ฐ์. * feat/OPS-390: CI ์ํฌํ๋ก์ฐ ์ผ๋ถ ์์ . * feat/OPS-390: ์ผ๋ถ placeholders ์์ . * feat/OPS-390: ์ผ๋ถ ๋ฌธ์ํ ํญ๋ชฉ ์์ . * refactor: s3 prefix ๋ถ๋ฆฌ ๋ฐ ci/cd ์์ ํ (#134) * refactor: S3 prefix ํ๊ฒฝ๋ณ์ ๋ถ๋ฆฌ ๋ฐ server ํ๋กํ์ผ ์ค์ ์ถ๊ฐ * fix: bucket ์คํ ์์ * [Hotfix] ๋ก๊ทธ์ธ ์๋ฌ ์์ (#135) * Update README.md * Remove unnecessary blank line in ApiV1DashboardController * [Feat/OPS-389] ์คํ์ด์ค ์ด๋ ์๋ฆผ ๊ตฌํ (#136) * new : emitter ๊ด๋ฆฌ service, controller ์์ฑ * feat : ํํธ๋นํธ ๋ก์ง ๊ตฌํ * fix : ๋น๋๊ธฐ ์ฒ๋ฆฌ ํ๋๋ก ๋ณ๊ฒฝ * feat : ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * fix : ํ ์คํธ ์์ * fix : ๋ถํ์ํ ์ด๋ ธํ ์ด์ ์ญ์ --------- Co-authored-by: EpicFn <[email protected]> * [feat/OPS-392] ์ฌ์ฉ์ ๊ฒ์ ๊ธฐ๋ฅ ์ถ๊ฐ (#137) * feat/OPS-392: ๊ฒ์ ๊ธฐ๋ฅ ์ถ๊ฐ & ElasticSearch ๊ตฌํ & ์ผ๋ถ ๋๋ฉ์ธ ์ค๋ฅ ์์ . * feat/OPS-392: CI ์ํฌํ๋ก์ฐ์ ElasticSearch ์๋น์ค ์ปจํ ์ด๋ ์์ฑ ๋ก์ง ์ถ๊ฐ. * feat/OPS-392: CI ์ํฌํ๋ก์ฐ์ ElasticSearch ์๋น์ค ์ปจํ ์ด๋ ์์ฑ ๋ก์ง ์ถ๊ฐ #2 * feat/OPS-392: ์ถ๊ฐ ๋๋ฉ์ธ ์ค๋ฅ ์์ . * feat/OPS-392: Docker-compose์ elastic-search ์๋น์ค ํญ๋ชฉ ์ถ๊ฐ. * fix: ๋๋ฉ์ธ ์์ฒญ ์ฌํญ์ ๋ง๊ฒ ์์ . (#138) * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. (#139) * ๋ฐฐํฌ์ฉ ์ปค๋ฐ (#140) * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #2 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. (#142) * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #2 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #3 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #4 * [Feat/OPS-391] ์์นด์ด๋ธ ์๋ฃ img ์๋ฃ ํ์ ์์ (#141) * feat/OPS-391 : ์ด๋ฏธ์ง ์์ multi part ๊ตฌํ * feat/OPS-391 : ์ด๋ฏธ์ง ์์ multi part ๊ตฌํ * refactor/OPS-391 : enum ๋์๋ฌธ์ ๋ฌด์ * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. (#143) * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #2 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #3 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #4 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #5 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #6 * fix: ์ด์์๋ฒ rabbitmq ํ๊ฒฝ๋ณ์ ์ค์ (#144) * feat/OPS-393 : ํฐ์คํ ๋ฆฌ ํฌ๋กค๋ฌ ์์ฑ (#145) * fix/OPS-394: API ๋ฌธ์ํ ๋ฐ s3 ์ค๋ฅ ์์ #1 (#146) * [fix/OPS-394] ๋ฌธ์ํ ๋ฐ ์ค๋ฅ ์์ 3 (#148) * fix/OPS-394: API ๋ฌธ์ํ ๋ฐ s3 ์ค๋ฅ ์์ #3 * fix/OPS-394: API ๋ฌธ์ํ ๋ฐ s3 ์ค๋ฅ ์์ #4 * refactor/OPS-395: ๊ฒ์ ๋ก์ง ์์ . (#149) * fix: ๋ฒจ๋ก๊ทธ ํฌ๋กค๋ฌ ์์ฑ์ผ์ ํ์ฑ ์ด์ ํด๊ฒฐ (#111) * fix : ์์ฑ์ผ์ ํ์ฑ ์ด์ ํด๊ฒฐ * refactor: velog ํฌ๋กค๋ฌ ์ฐ์ ์์ ๋๊ฒ ์ค์ * fix: ๋ฒจ๋ก๊ทธ ํฌ๋กค๋ฌ ์์ธ ์ฒ๋ฆฌ ์ถ๊ฐ (HTML ์์ ์์ ์ ๋น ๋ฌธ์์ด, ์์ฑ์ผ ์์ ์ ๊ธฐ๋ณธ๊ฐ) * fix : docker ์คํ์ AWS ํ๊ฒฝ๋ณ์๊ฐ ์ ๊ฑฐ (#150) * fix: ์ค๋ฐ๊ฟ ๋ฌธ์ ๋ค ๊ณต๋ฐฑ ์ ๊ฑฐ ๋ฐ OPENAI API Key ์ด์ํ๊ฒฝ๊ฐ ๋ถ๋ฆฌ (#152) * refactor/OPS-396: n-gram analyzer ์ ์ฉ์ ํตํ ๊ฒ์ ๊ฒฐ๊ณผ ํฅ์ & OAuth2SuccessHandler ๋ก์ปฌ ํ๊ฒฝ ๋ถ๊ธฐ. (#154) * refactor/OPS-398: ์ธ์ฆ/์ธ๊ฐ ์ค๋ฅ ์์ (#155) * [Refactor/OPS-380] ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ๊ฐ์ (#156) * refactor : membership ์กฐํ ์ lazy loading์ ์ํ n+1 ๋ฌธ์ ๊ฐ์ * refactor : space์ member ๋ชฉ๋ก ์กฐํ ์ n+ 1 ๋ฌธ์ ํด๊ฒฐ --------- Co-authored-by: EpicFn <[email protected]> * Update README.md (#157) * Create DEV_GUIDE.md (#158) * Update README.md (#159) * fix/OPS-399: ๋ฆฌํ๋ ์ ํ ํฐ ์ด์ ์์ . (#160) * refactor/OPS-397 : ๊ฒ์ ์๊ตฌ์ฌํญ ๋ฐ์ (#161) * hotfix : ์คํ์ด์ค ์ด๋ฏธ์ง ์ ์ฅ ๋ก์ง ์์ (#163) * fix : ํ์ฅ์ ์ถ๊ฐํ๊ณ ๋ก๊ทธ ๋ฑ๋๋ก ๋ณ๊ฒฝ * fix : prefix ๋ก ๊ตฌ๋ถํ๋๋ก ๋ณ๊ฒฝ * fix : CI ๊ณผ์ ์ ๋๋ฏธ prefix ๊ฐ ์ถ๊ฐ * fix : ํ๊ฒฝ ํ์ผ์ prefix ์ถ๊ฐ * fix : ์คํ ์์ --------- Co-authored-by: EpicFn <[email protected]> * fix/OPS-399: ๋ฆฌํ๋ ์ ํ ํฐ ์ด์ ์์ #2 (#165) * fix : ์ด๋ฏธ์ง ๊ฒฝ๋ก ๋ฐ ๋ฐํ ํ์ ์์ (#166) Co-authored-by: EpicFn <[email protected]> * fix : Url ์์ (#167) Co-authored-by: EpicFn <[email protected]> --------- Co-authored-by: Hyeok Jin Kim <[email protected]> Co-authored-by: Copilot <[email protected]> Co-authored-by: taekkong <[email protected]> Co-authored-by: main <[email protected]> Co-authored-by: EpicFn <[email protected]> Co-authored-by: osh5030 <[email protected]>
taekkong
added a commit
that referenced
this pull request
Oct 13, 2025
* [feat/OPS-262] GlobalExceptionHandler ์ค์ (#8) * feat: GlobalExceptionHandler ์งํ ์ฌํญ ์ ์ฅ. * feat/OPS-262 : GlobalExceptionHandler ์์ฑ ์๋ฃ. * [feat/OPS-126] Member ๋๋ฉ์ธ ๊ธฐ์ด ์ค๊ณ (#9) * feat/OPS-127 : Member ์ํฐํฐ ์์ฑ(ํ๋, ์ฐ๊ด ๊ด๊ณ, ์์ฑ์, ๋ฉ์๋) * feat/OPS-128 : MemberRepository ์์ฑ(name, email ๊ฒ์ ์ต์ ์ถ๊ฐ) * feat: GlobalExceptionHandler ์์ฑ์ ์ํ ์งํ ์ฌํญ ์ ์ฅ. * feat/OPS-129 : MemberService ์์ฑ(์กฐํ, ์์ฑ/์์ , ์ญ์ ) * feat/OPS-126 : Member ๋๋ฉ์ธ ์ค๊ณ ์๋ฃ. Service ํ ์คํธ ์ฝ๋ ์ถ๊ฐ * [Chore/OPS-264] ci ์ํฌํ๋ก์ฐ ๊ฐ์ (#10) * chore/OPS-264 : ci.yml ์์ * Update .github/workflows/ci.yml * Update .github/workflows/ci.yml --------- * Update .gitignore to exclude IntelliJ files (#11) Add .idea/ to .gitignore to exclude IntelliJ project files * feat/OPS-134 : ApiV1Controller ์์ฑ ์๋ฃ. (#12) * [chore/OPS-268] CI ์ํฌํ๋ก์ฐ ๊ฐ์ #2 (#15) ํ์ฌ ์์ ๋ก๊ทธ์ธ์ ์ฌ์ฉํ๋ ํน์ ๋ฏผ๊ฐํ ๊ฐ(JWT ํ ํฐ, ์์ client_id ๋ฑ)์ @value ์ด๋ ธํ ์ด์ ์ ํตํด ๋ฐ์์ค๊ณ ์์ต๋๋ค. ํ์ง๋ง ํด๋น ๋ฏผ๊ฐํ ๊ฐ์ ์ ์ฅํ yaml ํ์ผ์ ๋ ํฌ์งํ ๋ฆฌ์ ๋ฐ๋ก ์ฌ๋ฆด ์ ์๊ธฐ์, ๋ ํฌ์งํ ๋ฆฌ์ secrets์ ํด๋น ๊ฐ๋ค์ ์ ์ฅํด๋๊ณ , CI ์ํฌํ๋ก์ฐ์ ์ด ๊ฐ๋ค์ ์ฌ์ฉํด์ application-secrets.yml ํ์ผ์ ์์ฑํ๋ ๋ก์ง์ ์ถ๊ฐํ์ต๋๋ค. * [feat/OPS-155] ์์ ๋ก๊ทธ์ธ ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ(์นด์นด์ค) (#18) * feat/OPS-155 : ์์ ๋ก๊ทธ์ธ/ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ (์นด์นด์ค) ์๋ฃ. ์์ ์ฌํญ ๋ฐ์. * feat/OPS-155 : ์์ ๋ก๊ทธ์ธ/ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ (์นด์นด์ค) ์๋ฃ. ์์ ์ฌํญ ๋ฐ์ #2. * feat/OPS-155 : ์์ ๋ก๊ทธ์ธ/ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ (์นด์นด์ค) ์๋ฃ. ์์ ์ฌํญ ๋ฐ์ #3. * [chore/ops-130] Terraform์ ํ์ฉํด EC2 ์ธ์คํด์ค ์์ฑ ๋ฐ ์ค์ (#17) * chore/OPS-266 : EC2 ์ธ์คํด์ค ์์ฑ * chore/OPS-267 : VPC, IAM, SG ์ค์ * chore : ์๋ธ๋ท ์ค์ ์์ ๋ฐ nginx, mysql ๋ณผ๋ฅจ ๋ง์ดํธ ์ค์ ์ถ๊ฐ * chore : Dockerfile ์์ ๋ฐ EC2 ๋ณด์ ๊ทธ๋ฃน ์์ * chore : MYSQL ์ปจํ ์ด๋ ์คํ์ ์ด๊ธฐ DB ์ด๋ฆ ์ง์ ํ๋๋ก ์ค์ * fix/OPS-271 : SecurityConfig ๋ฐ Jwt ์ธ์ฆ ํํฐ ์์ (#19) * Feat/ops 209 be feat ํด๋ ์์ฑ (#21) * refactor: archive_id + name ๋ณตํฉ ์ ๋ํฌ ์ ์ฝ ์ถ๊ฐ * refactor: folder_id + title ๋ณตํฉ ์ ๋ํฌ ์ ์ฝ ์ถ๊ฐ * refactor: member_id, archive_id ๋จ์ผ ์ ๋ํฌ ์ ์ฝ ์ถ๊ฐ * refactor: ์ํฐํฐ ์ ์ฝ * feat/OPS-209-BE-feat-ํด๋-์์ฑ ์๋ฃ * feat/OPS-209-BE-feat-ํด๋-์์ฑ ์๋ฃ * fix : ์ปจ๋ฒค์ ํต์ผ (#22) * Feat/ops 210 be feat ํด๋ ์ญ์ (#23) * feat/OPS-210 : ํด๋ ์ญ์ ๊ตฌํ * [feat/OPS-151] llm ํ์ฉ ๋ฐ์ดํฐ ์ ์ ํ ๊ธฐ๋ฅ ๊ตฌํ (#27) - groq api๋ฅผ ์ด์ฉํ์ฌ ์์ฝ, ํ๊ทธ ์ถ์ถ ๊ธฐ๋ฅ ๊ตฌํ * [feat/OPS-158] ์์ ๋ก๊ทธ์ธ ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ(๊ตฌ๊ธ) (#28) * feat/OPS-158 : ์์ ๋ก๊ทธ์ธ(๊ตฌ๊ธ) ๊ตฌํ, JWT, Member, Auth ๋๋ฉ์ธ ๊ณ ๋ํ * feat/OPS-158 : ํ ์คํธ ์ผ์ด์ค ์์ . * fix/OPS-158 : template ์ถฉ๋ ํด๊ฒฐ. * fix/OPS-158 : @transactional import ์์ * feat/OPS-211 : ํด๋ ์ด๋ฆ ๋ณ๊ฒฝ ๊ตฌํ (#25) * feat/OPS-211 : ํด๋ ์ด๋ฆ ๋ณ๊ฒฝ ๊ตฌํ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * [chore/OPS-187] Terraform์ ํ์ฉํด RDS ์ธ์คํด์ค ์์ฑ ๋ฐ ์ค์ (#29) * chore/OPS-187 : Terraform์ ํ์ฉํด RDS ์ธ์คํด์ค ์์ฑ ๋ฐ ์ค์น * chore : RDS ์๋ธ๋ท ๊ทธ๋ฃน private์ผ๋ก ์์ * chore : AWS ๋ฆฌ์์ค ๋ค์ด๋ฐ ๊ท์น ์ ์ฉ * [feat] ์คํ์ด์ค ๋ฐ์ดํฐ ๊ด๋ฆฌ (#32) * new/OPS-222 : space controller, sevice, repository ๋น ์์ฑ # Conflicts: # src/main/java/org/tuna/zoopzoop/backend/global/initData/BaseInitData.java * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ์๋ํฌ์ธํธ ์ถ๊ฐ * new/OPS-222 : spaceControllerTest ํ์ผ ์ธํ * refactor/OPS-222 : ํ ์คํธ ํด๋์ค์ ๊ณต์ฉ ํํธ ์ถ์ ํด๋์ค๋ก ๋ถ๋ฆฌ * fix : ์ต์ ์ฌํญ ๋ฐ์ * fix/OPS-222 : ํ ์คํธ ์ฝ๋์์ ํ์ ๋ค๋ฅด๋ ๊ฑฐ ์์ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๊ตฌํ * feat/OPS-222 : space ๋จ์ ํธ๋ค๋ฌ, ์ปค์คํ ์๋ฌ ์์ฑ * fix/OPS-222 : controller ์์ฑ ํ ์คํธ ํต๊ณผ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๋ก์ง ์์ฑ * feat/OPS-222 : ์คํ์ด์ค ์ญ์ ๊ตฌํ * fix/OPS-222 : ํ ์คํธ ์ผ์ด์ค ํต๊ณผ * feat/OPS-245 : controller ๋จ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-245 : ์คํ์ด์ค ๋ช ๋ณ๊ฒฝ ๊ตฌํ * fix/OPS-244 : ์ด๋ฆ ๋ณ๊ฒฝ ์ saveAndFlush๋ก ์ฆ์ ๋ฐ์ * chore/OPS-222 : develop ์ต์ ์ฌํญ ๋ฐ์ * fix : ์ ์ฅ * fix/OPS-222 : globalExceptionHandler ์ปจ๋ฒค์ ํต์ผ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ controller ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-244 : membership ๊ด๋ฆฌ ๋น ์์ฑ * feat/OPS-244 : membership ์์ฑ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ฑ * fix : ํ ์คํธ ์ผ์ด์ค ๊ฐ ์ถฉ๋ ํด๊ฒฐ ์ค * fix : ์ต์ ์ฌํญ ๋ฐ์ * ์์์ ์ฅ * ์ด๊ธฐ ์ํ * fix : ๋ฏธ๋ด์ฑ ์ ์ฉ * feat/OPS-244 : ์คํ์ด์ค ๋ฉค๋ฒ ์ถ๊ฐ ๊ธฐ๋ฅ * fix : spaceControllerTest์ memberControllerTest ๊ฐ ์ถฉ๋ ํด๊ฒฐ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * chore/OPS-244 : ์ธ์ฆ ๊ด๋ จ ์ฝ๋ ์ฃผ์ ์ฒ๋ฆฌ * feat/OPS-270 : ์คํ์ด์ค ๋ก์ง์ ์ฌ์ฉ์ ์ ๋ณด ์ฒดํฌ ์ถ๊ฐ * feat/OPS-22 : ํ ์คํธ ์ผ์ด์ค์ WithUserDetails ๋ฐ์ * feat/OPS-222 : ์ธ์ฆ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * fix : ๋ถํ์ํ ์ฃผ์ ์ญ์ * new/OPS-222 : space controller, sevice, repository ๋น ์์ฑ # Conflicts: # src/main/java/org/tuna/zoopzoop/backend/global/initData/BaseInitData.java * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ์๋ํฌ์ธํธ ์ถ๊ฐ * new/OPS-222 : spaceControllerTest ํ์ผ ์ธํ * refactor/OPS-222 : ํ ์คํธ ํด๋์ค์ ๊ณต์ฉ ํํธ ์ถ์ ํด๋์ค๋ก ๋ถ๋ฆฌ * fix : ์ต์ ์ฌํญ ๋ฐ์ * fix/OPS-222 : ํ ์คํธ ์ฝ๋์์ ํ์ ๋ค๋ฅด๋ ๊ฑฐ ์์ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๊ตฌํ * feat/OPS-222 : space ๋จ์ ํธ๋ค๋ฌ, ์ปค์คํ ์๋ฌ ์์ฑ * fix/OPS-222 : controller ์์ฑ ํ ์คํธ ํต๊ณผ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๋ก์ง ์์ฑ * feat/OPS-222 : ์คํ์ด์ค ์ญ์ ๊ตฌํ * fix/OPS-222 : ํ ์คํธ ์ผ์ด์ค ํต๊ณผ * feat/OPS-245 : controller ๋จ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-245 : ์คํ์ด์ค ๋ช ๋ณ๊ฒฝ ๊ตฌํ * fix/OPS-244 : ์ด๋ฆ ๋ณ๊ฒฝ ์ saveAndFlush๋ก ์ฆ์ ๋ฐ์ * chore/OPS-222 : develop ์ต์ ์ฌํญ ๋ฐ์ * fix : ์ ์ฅ * fix/OPS-222 : globalExceptionHandler ์ปจ๋ฒค์ ํต์ผ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ controller ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-244 : membership ๊ด๋ฆฌ ๋น ์์ฑ * feat/OPS-244 : membership ์์ฑ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ฑ * fix : ํ ์คํธ ์ผ์ด์ค ๊ฐ ์ถฉ๋ ํด๊ฒฐ ์ค * fix : ์ต์ ์ฌํญ ๋ฐ์ * ์์์ ์ฅ * ์ด๊ธฐ ์ํ * fix : ๋ฏธ๋ด์ฑ ์ ์ฉ * feat/OPS-244 : ์คํ์ด์ค ๋ฉค๋ฒ ์ถ๊ฐ ๊ธฐ๋ฅ * fix : spaceControllerTest์ memberControllerTest ๊ฐ ์ถฉ๋ ํด๊ฒฐ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * chore/OPS-244 : ์ธ์ฆ ๊ด๋ จ ์ฝ๋ ์ฃผ์ ์ฒ๋ฆฌ * feat/OPS-270 : ์คํ์ด์ค ๋ก์ง์ ์ฌ์ฉ์ ์ ๋ณด ์ฒดํฌ ์ถ๊ฐ * feat/OPS-22 : ํ ์คํธ ์ผ์ด์ค์ WithUserDetails ๋ฐ์ * feat/OPS-222 : ์ธ์ฆ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * fix : ๋ถํ์ํ ์ฃผ์ ์ญ์ * fix : ๋ถํ์ํ ํ์ผ ์ญ์ --------- * Ops 272 be feat ์๋ฃ ์ด๋ฆ ์กฐํ (#31) * feat/OPS-211 : ํด๋ ์ด๋ฆ ๋ณ๊ฒฝ ๊ตฌํ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * feat/OPS-272 : ํด๋/ํ์ผ ์กฐํ ๊ตฌํ * refactor/OPS-272 : tag ์์ฑ์ ์ถ๊ฐ * feat/OPS-195 : ๋ด์ค ๋ชฉ๋ก ์กฐํ ๊ธฐ๋ฅ ๊ตฌํ(์ต์ ๋ด์ค, ํค์๋ ๊ธฐ๋ฐ). ์๋น์ค ํ ์คํธ ์ถ๊ฐ. (#33) * refactor/OPS-277 : default ํด๋ ์๋ ์์ฑ (#34) * [chore/OPS-278] Auth, Member, News ๋๋ฉ์ธ ๋ฌธ์ํ ๋ฐ ๊ณ ๋ํ. (#35) * chore/OPS-278 : Auth ๋๋ฉ์ธ ๋ฌธ์ํ ์๋ฃ & ApiV1MemberController ์ถ๊ฐ ๊ธฐ๋ฅ ๊ตฌํ. * refactor/OPS-278 : ApiV1MemberController ์ถ๊ฐ ์ฌํญ์ ๋ง๊ฒ ํ ์คํธ ์ถ๊ฐ ๊ตฌํ. * refactor/OPS-278 : Member ์์ฑ ์, ๋๋คํ UUID์ ์ 5๊ธ์๋ฅผ ํ๊ทธ๋ก ์ฌ์ฉํ๋๋ก ๋ณ๊ฒฝ. * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- * refactor/OPS-283 : datasource ์ํฐํฐ ์์ (#39) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * [feat/OPS-175] ์น ํฌ๋กค๋ง ๋ฐ์ดํฐ ์ ์ ํ ๊ธฐ๋ฅ ๊ตฌํ (#41) * feat/OPS-175 : ์น ํฌ๋กค๋ง ๋ฐ์ดํฐ ์ ์ ํ ๊ธฐ๋ฅ ๊ตฌํ * [refactor/OPS-287] News ๋๋ฉ์ธ ๊ณ ๋ํ (#42) * refactor/OPS-287 : newsSearch ๋ฉ์๋ ๋ก์ง ๋ณ๊ฒฝ ๋ฐ ์ผ๋ถ API ๋ฌธ์ํ. * refactor/OPS-287 : NewsServiceTest API๋ฅผ ํธ์ถํ๋ ๋ฐฉ์์ผ๋ก ๋ณ๊ฒฝ. * Ops 226 be feat ์๋ฃ ๋ฑ๋ก (#44) * refactor/OPS-283 : datasource ์ํฐํฐ ์์ * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * feat/OPS-226 : ์๋ฃ ๋ฑ๋ก ๊ตฌํ * refactor/OPS-226 : ๋ฉ์๋ ๋ช ์์ --------- * Ops 215 be feat ์๋ฃ ์ญ์ (#46) * refactor/OPS-283 : datasource ์ํฐํฐ ์์ * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * feat/OPS-226 : ์๋ฃ ๋ฑ๋ก ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ --------- * [feat/OPS-293] LiveBlocks๋ฅผ ์ํ React-flow ๋ฐ์ดํฐ ๊ด๋ฆฌ ๋๋ฉ์ธ ์ค๊ณ ์๋ฃ. ํ ์คํธ ์ถ๊ฐ. (#47) * feat/OPS-293 : LiveBlocks๋ฅผ ์ํ React-flow ๋ฐ์ดํฐ ๊ด๋ฆฌ ๋๋ฉ์ธ ์ค๊ณ ์๋ฃ. ํ ์คํธ ์ถ๊ฐ. * feat/OPS-293 : folder ํ ์คํธ์ @transactional ์ถ๊ฐ. * feat/OPS-293 : MemberServiceTest ์์ #1 * feat/OPS-293 : MemberServiceTest ์์ #2 * feat/OPS-293 : Folder ํ ์คํธ์ ActiveProfile(test) ์ถ๊ฐ. * feat/OPS-293 : ํ ์คํธ์ ๋ฌด๊ฒฐ์ฑ ๊ฒ์ฆ์ ์ํ @afterall, @AfterEach ์ถ๊ฐ. * feat/OPS-293 : ์ผ๋ถ ์์ . * feat/OPS-293 : ์ง์ง ๋ง์ง๋ง ์์ . * [chore/ops-132] CI/CD ํ์ดํ๋ผ์ธ ๊ตฌ์ถ (#43) * chore/OPS-133 : CI ํ์ดํ๋ผ์ธ ๊ตฌ์ถ * chore: ํ ์คํธ/์ด์ ํ๊ฒฝ์ฉ GitHub Actions Terraform ์๋ ์ธํ๋ผ ์ ์ฉ ์ํฌํ๋ก์ฐ ์ถ๊ฐ * chore : ํ๊ฒฝ๋ณ์๋ก test/prod ์๋ฒ ๋ถ๋ฆฌ ๊ฐ๋ฅํ๋๋ก ์ค์ * chore/OPS-135 : CD ์ํฌํ๋ก์ฐ ์ถ๊ฐ * chore: CI ํ CD ์คํ๋๋๋ก ์ค์ * chore : CI ์ํฌํ๋ก์ฐ job ๋ถ๋ฆฌ(ํ ์คํธ,๋น๋/๋์ปค ๋น๋,ghcr push) * chore : docker build jobs์์ checkout ๋จ๊ณ ์ถ๊ฐ * chore: CI ์ํฌํ๋ก์ฐ job ๊ตฌ๋ถ ์์ฐ * chore : develop/main ๋ธ๋์น์ ๋ฐ๋ผ CI/CD ์ํฌํ๋ก์ฐ ๋ถ๋ฆฌ * chore : Spring Boot Acutator ์์กด์ฑ ์ถ๊ฐ * chore: Actions์์ SSH ์ ์ ํ docker ์คํ ๊ถํ ๊ฐ๋๋ก ์ค์ * chore: ์ปจํ ์ด๋ ์คํ ๋ก๊ทธ ํฐ๋ฏธ๋์ ์ถ๋ ฅ ์ค์ * chore : ํฌ์ค์ฒดํฌ ์ค์ * chore: secrets ์ง์ ssh ํ๊ฒฝ ๋ณ์๋ก ์ ๋ฌ * chore: ํ๊ฒฝ๋ณ์ ์ง์ docker run์ ๋ฃ๊ธฐ * chore: spdocker run ์์ ring profile ์ ๊ฑฐ * chore: nginx ์ค์ * chore: test-cd ์์ * chore: test-cd ์์ 2 * chore: ghcr ๋ก๊ทธ์ธ ํ ํฐ ์์ * chore: ๋์ปค ์ด๋ฏธ์ง pull ์ด๋ฆ ์์ * chore: ssh ๋ด ์์ ํ ghcr ๋ก๊ทธ์ธ * chore : ์ด๋ฏธ pullํ ์ด๋ฏธ์ง์ run ์ด๋ฏธ์ง ์ด๋ฆ ์ผ์น์ํค๊ธฐ * chore: mysql driver ์์กด์ฑ ์ถ๊ฐ * chore : ํฌ์ค์ฒดํฌ ์์ฒญ ์คํ๋ง ์ํ๋ฆฌํฐ ํํฐ์ ๊ฑธ๋ฆฌ์ง ์๋๋ก ์ค์ * chore: nginx ํฌํธ ์ค์์นญ ์ค์ * chore: nginx ํฌํธ ์ค์์นญ ์ค์ ์์ * chore: nginx ํฌํธ ์ค์์นญ ์ค์ ์์ 2 * chore: ์ด์์๋ฒ CD ์ํฌํ๋ก์ฐ ์์ * chore : prod-server ์ํฌํ๋ก์ฐ ํ์ฑํ ๊ฒฝ๋ก ์ค์ * chore : test commit ๋์ค์ ์ง์ฐ๊ธฐ * [Feat/OPS-214] ์คํ์ด์ค ๋ฉค๋ฒ ๊ด๋ฆฌ (#50) * feat/OPS-227 : ์คํ์ด์ค ๋ฉค๋ฒ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-227 : ์คํ์ด์ค ๋ชฉ๋ก ๋ฐํ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-251 : ๊ถํ ๋ณ๊ฒฝ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-214 : ๊ถํ ๋ณ๊ฒฝ ์๋ํฌ์ธํธ ๊ตฌํ * fix/OPS-214 : ๋จ์ ๋ฉ์ธ์ง ์ค๋ฅ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-214 : ๋ก์ง ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-251 : globalExceptionHandler์ ์ญ์ง๋ ฌํ ์คํจ ์๋ฌ ์ถ๊ฐ * refactor/OPS-214 : ๋น์ฆ๋์ค ๋ก์ง์ ์๋น์ค ๊ณ์ธต์ ์ผ์ * feat/OPS-231 : ์คํ์ด์ค ์ด๋ ์ปจํธ๋กค๋ฌ ํ ์คํธ์ผ์ด์ค ์์ฑ * feat/OPS-231 : ์คํ์ด์ค ์ด๋ ๋ก์ง ์์ฑ * feat/OPS-231 : ์คํ์ด์ค์ด๋ ์๋น์ค ๋น ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * feat/OPS-228 : ํ์ ํด์ถ ์ปจํธ๋กค๋ฌ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feeat/OPS-229 : ํ์ ํด์ถ ๊ตฌํ ์๋ฃ * fix : ๊ธฐ์กด ํ ์คํธ ์ผ์ด์ค ์ผ๊ด์ฑ ์๊ฒ ์์ * feat : ๋ฉค๋ฒ ํด์ถ ์๋น์ค ํ ์คํธ ์ฝ๋ ์์ฑ * refactor : DTO ํจํค์ง ๋ณ๊ฒฝ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ์ปจํธ๋กค๋ฌ ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ๋ก์ง ์์ฑ * refactor : space ๋๋ฉ์ธ dto ํจํค์ง ๋ณ๊ฒฝ * feat/OPS-227 : ์คํ์ด์ค ๋ฉค๋ฒ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-227 : ์คํ์ด์ค ๋ชฉ๋ก ๋ฐํ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-251 : ๊ถํ ๋ณ๊ฒฝ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-214 : ๊ถํ ๋ณ๊ฒฝ ์๋ํฌ์ธํธ ๊ตฌํ * fix/OPS-214 : ๋จ์ ๋ฉ์ธ์ง ์ค๋ฅ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-214 : ๋ก์ง ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-251 : globalExceptionHandler์ ์ญ์ง๋ ฌํ ์คํจ ์๋ฌ ์ถ๊ฐ * refactor/OPS-214 : ๋น์ฆ๋์ค ๋ก์ง์ ์๋น์ค ๊ณ์ธต์ ์ผ์ * feat/OPS-231 : ์คํ์ด์ค ์ด๋ ์ปจํธ๋กค๋ฌ ํ ์คํธ์ผ์ด์ค ์์ฑ * feat : ์ต์ ์ฌํญ ๋ฐ์ * feat/OPS-231 : ์คํ์ด์ค์ด๋ ์๋น์ค ๋น ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * feat/OPS-228 : ํ์ ํด์ถ ์ปจํธ๋กค๋ฌ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feeat/OPS-229 : ํ์ ํด์ถ ๊ตฌํ ์๋ฃ * fix : ๊ธฐ์กด ํ ์คํธ ์ผ์ด์ค ์ผ๊ด์ฑ ์๊ฒ ์์ * feat : ๋ฉค๋ฒ ํด์ถ ์๋น์ค ํ ์คํธ ์ฝ๋ ์์ฑ * refactor : DTO ํจํค์ง ๋ณ๊ฒฝ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ์ปจํธ๋กค๋ฌ ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ๋ก์ง ์์ฑ * refactor : space ๋๋ฉ์ธ dto ํจํค์ง ๋ณ๊ฒฝ --------- * refactor/OPS-308 : ๋๋ฉ์ธ ๋ถ๋ฆฌ & CI ์ํฌํ๋ก์ฐ์ application-secrets-server.yml ์ถ๊ฐ. (#52) * Ops 255 be feat ์๋ฃ ์์ (#54) * refactor/OPS-283 : datasource ์ํฐํฐ ์์ * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * feat/OPS-226 : ์๋ฃ ๋ฑ๋ก ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-255 : ์๋ฃ ์ด๋ ๋ฐ ์์ ๊ตฌํ --------- * feat/OPS-289 : dataprocessor ์๋น์ค ์์ฑ (#59) * fix/OPS-318 : proxy host ์ค์์นญรฌ๏ฟฝ ssl ์ธ์ฆ์ ์ ์ง (#60) * [refactor/OPS-310] redirect url ๋ณ๊ฒฝ (#53) * refactor/OPS-310 : redirect-url ๋ณ๊ฒฝ. * refactor/OPS-310 : ์์ ์์ . * refactor/OPS-310 : ๋ ํ๋์ ์์ ์์ . * refactor/OPS-310 : ํฐ ์์ . * refactor/OPS-310 : ํ ์คํธ * refactor/OPS-310 : ์์ฒญ ์ฌํญ ๋ฐ์. * refactor/OPS-310 : ์์ฒญ ์ฌํญ ๋ฐ์ #2 * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ (#64) * [refactor/OPS-323] News API ์กฐํ ๋ก์ง ์์ . (#65) * ๋ฐฐํฌ ํ ์คํธ #2 * ๋ก์ง ์์ ํ ์คํธ * ๋ก์ง ์์ ํ ์คํธ #2 * refactor/OPS-322 : source ์นผ๋ผ๋ช ์์ (#68) * refactor/OPS-322 : source ์นผ๋ผ๋ช ์์ * refactor/OPS-322 : source ์นผ๋ผ๋ช ์์ * feat/OPS-321 : dataProcessorService์์ ์์ฝ ๋ก์ง ์์ฑ (#69) * [fix/OPS-317] CI/CD ํ์ดํ๋ผ์ธ ์ด๋ฒคํธ ๋ถ๋ฆฌ (#66) * fix : prod-server nginx ์ ๋ณด ์ถ๋ ฅ ์ ๊ฑฐ * fix : prod-server CD ์ํฌํ๋ก์ฐ main์ push๋ ๋ ์คํ๋๋๋ก ์์ * fix : test-server CI๋ pr์ develop์ ์คํ, CD๋ push๋ ๋ ์คํ * fix : test-server CI ์ํฌํ๋ก์ฐ์์ CD ๋ถ๋ถ ์ ๊ฑฐ * chore : ๋น๋์ aws๊ด๋ จ ์ ๋ณด application-secret.yml์ ๋ค์ด๊ฐ๋๋ก ์ค์ (#73) * chore : S3 ์ฌ์ฉ์ ์ํด ๋น๋์ AWS ์ ๋ณด application-secrets.yml์ ์ถ๊ฐ๋๋๋ก ์ค์ * chore : ์ญํ ์ S3 ์ ๊ทผ ์ ์ฑ ๋ถ์ฐฉ ํ๋๋ก ์ค์ * chore : รฃyml์ ์ถ๊ฐ์ ๋ณด ๋ฃ๋๋ก ์ค์ * [Feat/OPS-275] ์คํ์ด์ค ์ธ๋ค์ผ ์ด๋ฏธ์ง ์ ์ฅ (#71) * chore : S3 ํ๊ฒฝ ์ค์ * feat : S3Service ๊ตฌ์ฑ * chore : multipart ๋ฐ์ดํฐ ํฌ๊ธฐ ์ค์ * feat : S3 ์ ๋ก๋ ํ ์คํธ์ฉ ์๋ํฌ์ธํธ ์์ฑ * feat : S3 ์ฐ๋ ์๋ฃ * feat : space entity์ imageUrl ํญ๋ชฉ ์ถ๊ฐ * feat : ์ธ๋ค์ผ ์บก์ฒ ํ ์คํธ์ฉ * feat : ์ธ๋ค์ผ ์ดฌ์ ํ ์คํธ ์๋ํฌ์ธํธ ์์ฑ * feat : ์คํ์ด์ค ์ธ๋ค์ผ ๊ฐฑ์ API ์์ฑ * feat : ์คํ์ด์ค ์ด๋ฏธ์ง ๊ฐฑ์ ๊ธฐ๋ฅ ์์ฑ * feat : ์คํ์ด์ค ๋ชฉ๋ก ๋ฐํ ์ ์ธ๋ค์ผ url ๊ฐ์ด ๋ฐํ * feat : ์คํ์ด์ค ๋จ๊ฑด ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat : ์คํ์ด์ค ๋จ๊ฑด ์กฐํ ๊ตฌํ * feat : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ํ์ด์ง ๊ธฐ๋ฅ ์ถ๊ฐ --------- * [feat/OPS-324] ํฌ๋กฌ ํ์ฅ ํ๋ก๊ทธ๋จ ์์ ๋ก๊ทธ์ธ ๋ถ๊ธฐ & ์์ ๋ก๊ทธ์ธ ํ ์คํธ API ์ถ๊ฐ. (#70) * feat/OPS-324 : ํ์ฅ ํ๋ก๊ทธ๋จ ๋ถ๊ธฐ ๋ฐ ์์ ๋ก๊ทธ์ธ ํ ์คํธ API ์ถ๊ฐ. * feat/OPS-324 : ํ ์คํธ ๋ก์ง ์ผ๋ถ ์์ . * feat/OPS-324 : ํ ์คํธ ๋ก์ง ์ผ๋ถ ์์ . #2 * feat/OPS-324 : ํ ์คํธ ์๋ฃ, ํ ์คํธ ์ฝ๋ ์ ๊ฑฐ. * feat/OPS-324 : ๋ก๊ทธ์ธ ๋ถ๊ธฐ ์์ . * feat/OPS-324 : state ์ ๋ณด๋ฅผ ์ ์ฅํ๋ resolver ์ถ๊ฐ. * feat/OPS-324 : session ๋ฑ๋ก์ ์ํ OAuth2LoginSourceFilter ํด๋์ค ์ถ๊ฐ. * feat/OPS-324 : ํด๊ฒฐ * fix : ci ์ secrets ์์ S3 ๊ด๋ จ ์ํฌ๋ฆฟ ๊ฐ ์ญ์ ํ๋๋ก ๋ณ๊ฒฝ(๋ฒํท๋ช ์ ์ธ) (#74) * fix : ci ์ secrets ์์ S3 ๊ด๋ จ ์ํฌ๋ฆฟ ๊ฐ ์ญ์ ํ๋๋ก ๋ณ๊ฒฝ(๋ฒํท๋ช ์ ์ธ) * fix : CI ์คํ ์์ * fix : build ๋จ๊ณ์์ testest๋ฅผ ์ํํ์ง ์๋๋ก ๋ณ๊ฒฝ --------- * [feat/OPS-198] ์์นด์ด๋ธ ์ ๋ณด๋ก ๋ด์ค ๋ชฉ๋ก ์กฐํ (#75) * feat/OPS-198 : ์์นด์ด๋ธ ๊ธฐ๋ฐ ๋ด์ค ์กฐํ ๊ตฌํ. * feat/OPS-198 : ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ. * feat/OPS-265 : LLM-ํ์ฉ-๋ฐ์ดํฐ-์ ์ ํ-์-๊ธฐ์กด-์์นด์ด๋ธ์-ํ๊ทธ-์ฐ๋ (#77) * refactor/OPS-319: ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ (#76) * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * fix : SpringDoc๊ณผ Spring AI ๊ฐ ์์กด์ฑ ์ถฉ๋ ํด๊ฒฐ (#79) * [Feat/OPS-327] ์๋ฃ ๋ฑ๋ก llm ์ฐ๋ (#78) * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-327 : ์๋ฃ ๋ฑ๋ก LLM ์ฐ๋ * [feat/OPS-328] ์ธ์ฆ/์ธ๊ฐ ๋ก์ง ๋ณ๊ฒฝ (#80) * feat/OPS-328 : RefreshToken์ ์๋ฒ์์ ์ ์ฅํ๋๋ก ๋ณ๊ฒฝ. API ์ผ๋ถ ์์ . * feat/OPS-328 : ํ์ฅ ํ๋ก๊ทธ๋จ ๋ก๊ทธ์ธ ๋ฉ์๋ ์ถ๊ฐ ๋ฐ ๋ฐ์ดํฐ ์บ์ฑ ๋ฉ์๋ ์ถ๊ฐ. * [refactor/OPS-337] ์๊ตฌ์ฌํญ ๋ฐ์ ๋ฐ ์ผ๋ถ ๋ก์ง ์์ . (#81) * refactor/OPS-337 : ํ๋ก ํธ ์๊ตฌ์ฌํญ ๋ฐ์ ๋ฐ ์๋ฌ ์์ . * refactor/OPS-337 : ํ ์คํธ ์ผ์ด์ค ์์ . * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ (#82) * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : mock ์ถ๊ฐ๋ก ์ธํ testcase ์์ * [feat/OPS-338] ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ (#83) * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : mock ์ถ๊ฐ๋ก ์ธํ testcase ์์ * refactor/OPS-338 : Dev ํ ํฐ ๋ฐ๊ธ ์ปจํธ๋กค๋ฌ ์ถ๊ฐ * [Feat/OPS-326] ๋์๋ณด๋ ๋ฐ์ดํฐ ์ ์ฅ ์ฒด๊ณ ๊ตฌ์ถ (#85) * refactor : graph ๋๋ฉ์ธ์ dashboard ๋๋ฉ์ธ์ผ๋ก ์์ , dashboard ์ํฐํฐ ์์ฑ * feat : ์คํ์ด์ค ๋จ๊ฑด ์กฐํ ์ ๋์๋ณด๋ id๋ ํจ๊ป ๋ฐํ * refactor : API ๋ช ๋ณ๊ฒฝ * dashboard ๊ธฐ๋ฐ์ผ๋ก ์ ์ฅ/์กฐํ ๋๋๋ก ๋ณ๊ฒฝ * refactor : ํ ์คํธ ์ฝ๋ ์์ * fix : ๋ฐํ ๋ฉ์ธ์ง ์์ * feat : ์๋ช ๊ฒ์ฆ ๋ก์ง ๊ตฌํ * refactor : signature ์๋น์ค ๋ถ๋ฆฌ * fix : ์คํ ์์ * fix : CI ํ์ดํ๋ผ์ธ ์์ --------- * [feat/OPS-329] Sentry๋ฅผ ํตํ ๋ชจ๋ํฐ๋ง ํ๊ฒฝ ๊ตฌ์ถ. (#86) * feat/OPS-329 : Sentry๋ฅผ ํตํ ๋ชจ๋ํฐ๋ง ํ๊ฒฝ ๊ตฌ์ถ. * feat/OPS-329: ์ถ๊ฐ๋ก ํ๋ก ํธ ์๊ตฌ ์ฌํญ ๋ฐ์. * refactor/OPS-353 : ๋ถ๋ฆฌ ์๋ฃ. (#87) * [refactor/OPS-354] ํ ์คํธ ์ผ์ด์ค ์ฌ์ฉ ํ๋กํ ๋ณ๊ฒฝ. (#88) * refactor/OPS-354 : ํ ์คํธ ์ผ์ด์ค ์ฌ์ฉ ํ๋กํ ๋ณ๊ฒฝ. * refactor/OPS-354 : ์ด๋๋ ์๋ผ? * refactor/OPS-355 : ์๊ตฌ ์ฌํญ ๋ฐ์. (#91) * feat/OPS-358: Redis ์์กด์ฑ ์ถ๊ฐ ๋ฐ RedisConfig ์ค์ ์๋ฃ. AuthResultData ์ง๋ ฌํ ๋ฐ AuthResult ํด๋์ค์ TTL ๋์ . (#92) * feat/OPS-356 : ๋ค์ด๋ฒ ๋ธ๋ก๊ทธ ํฌ๋กค๋ฌ ์์ฑ (#93) * [feat/OPS-252] ์กฐ๊ฑด๋ณ ์๋ฃ ๊ฒ์ (#89) * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-327 : ์๋ฃ ๋ฑ๋ก LLM ์ฐ๋ * refactor/OPS-252 : ์กฐ๊ฑด๋ณ ์๋ฃ ๊ฒ์ ๊ตฌํ * refactor/OPS-252 : ์กฐ๊ฑด๋ณ ์๋ฃ ๊ฒ์ * fix : ์คํ์ด์ค, ์ฌ์ฉ์ ๋ชฉ๋ก ๋ฐํ ์ ํญ์ id ์ค๋ฆ์ฐจ์ ์ ๋ ฌ (#94) * IllegalStateException(๋์์ฑ ๋ฌธ์ )๊ด๋ จ ์ฒ๋ฆฌ ๋ฉ์๋ ์ถ๊ฐ. (#95) * [fix/OPS-362] ์๊ตฌ ์ฌํญ ๋ฐ์ (#96) * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์. * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#2 * [feat/OPS-341] ๋ฒจ๋ก๊ทธ ํฌ๋กค๋ฌ ์์ฑ (#90) * feat/OPS-341 : Velog ํฌ๋กค๋ฌ ์์ฑ * fix : createDate,modifyDate ์๋ ์ ์ฉ๋๋๋ก ์ค์ * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#3 (#97) * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#4 (#98) * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#5 (#99) * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#6 (#100) * [refactor/OPS-360] folder&datasource ๋ฆฌํํ ๋ง (#101) * refactor/OPS-360 : OpenAPI ์ ๋ํ ์ด์ ์ถ๊ฐ * refactor/OPS-360 : NoResultException ์์ธ ๋ถ๋ฆฌ * refactor/OPS-360 : param ์ถ๊ฐ * refactor/OPS-360 : param ์ถ๊ฐ * refactor/OPS-360 : default ํด๋ CRUD ๋ก์ง ์์ * refactor/OPS-360 : ํด๋ ๋ฆฌ์คํธ๋ ํธ์ถ ๋ก์ง ์์ * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#7 (#102) * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#8 (#103) * hotfix/OPS-346 : ํ์ผ ์กฐํ ์์ (#104) * [feat/OPS-365 ] soft delete + ํด์งํต ์กฐํ ๊ตฌํ (#105) * feat/OPS-365 : soft delete + ํด์งํต ์กฐํ ๊ตฌํ * refactor/OPS-246 : ์๊ตฌ์ฌํญ ๋ฆฌํฉํ ๋ง * chore : rabbitmq ํ๊ฒฝ์ค์ (#106) * chore : rabbitmq ๋ก์ปฌ ๊ฐ๋ฐ ํ๊ฒฝ ์ค์ * chore : rabbitmq ๊ด๋ จ springboot ํ๊ฒฝ ์ค์ * chore: rabbitmq ์์กด์ฑ ์ถ๊ฐ * [Feat/OPS-344] message queue ๊ตฌํ (#107) * chore : RabbitMQ ํ๊ฒฝ ์ค์ * chore : CI ํ์ดํ๋ผ์ธ์์ RabbitMQ ์ปจํ ์ด๋๋ฅผ ๋์์ ์ฌ์ฉํ๋๋ก ์ค์ * new : RabbitMQ ์ค์ ํด๋์ค, dto ์์ฑ * feat : producer method ์์ฑ * feat : ๋ฉ์ธ์ง ํ ๊ตฌํ ์๋ฃ * feat : ๋ฐ์ดํฐ ์ ์ฅ ์์ฒญ ํ ์คํธ ์ผ์ด์ค ์์ * feat : ConsumerTest ์ฝ๋ ์ถ๊ฐ * fix : ์ ์ฅ ํ ์คํธ ์ผ์ด์ค ์ฑ๊ณต * fix : ํ ์คํธ ์ฝ๋ ์์ ์ค * fix : ํ ์คํธ ์ผ์ด์ค ์ฑ๊ณต * feat : dlq ๋์ * feat : ๋ฐ์ดํฐ ์์ ๋ณด์ฅ์ ์ํด version ์ถ๊ฐ * refactor : MQConfig ํ์ผ ์์น ๋ณ๊ฒฝ * chore : RabbitMQ ํ๊ฒฝ ์ค์ # Conflicts: # docker-compose.yml # src/main/resources/application.yml * chore : CI ํ์ดํ๋ผ์ธ์์ RabbitMQ ์ปจํ ์ด๋๋ฅผ ๋์์ ์ฌ์ฉํ๋๋ก ์ค์ * new : RabbitMQ ์ค์ ํด๋์ค, dto ์์ฑ * feat : producer method ์์ฑ * feat : ๋ฉ์ธ์ง ํ ๊ตฌํ ์๋ฃ * feat : ๋ฐ์ดํฐ ์ ์ฅ ์์ฒญ ํ ์คํธ ์ผ์ด์ค ์์ * feat : ConsumerTest ์ฝ๋ ์ถ๊ฐ * fix : ์ ์ฅ ํ ์คํธ ์ผ์ด์ค ์ฑ๊ณต * fix : ํ ์คํธ ์ฝ๋ ์์ ์ค * fix : ํ ์คํธ ์ผ์ด์ค ์ฑ๊ณต * feat : dlq ๋์ * feat : ๋ฐ์ดํฐ ์์ ๋ณด์ฅ์ ์ํด version ์ถ๊ฐ * refactor : MQConfig ํ์ผ ์์น ๋ณ๊ฒฝ * fix : ์ต์ ์ฌํญ ๋ฐ์ * fix : copilot review ๋ฐ์ * feat : Dashboard์์ graph ์ฐธ์กฐ ๋ฐฉ์ EAGER -> LAZY ๋ก ๋ณ๊ฒฝ * CI ์คํจํด์ ๋ค์ EAGER๋ก ๋ณ๊ฒฝ * fix : ๋ค์ LAZY๋ก ๋ณ๊ฒฝ --------- * [Refactor/OPS-373] ์๋ฃ ์กฐํ ๊ฒ์ ์๊ตฌ์ฌํญ ์์ (#108) * refactor/OPS-373 : ์๋ฃ ์ด๋ฆ unique ์์ฑ ์ญ์ * refactor/OPS-373 : ์๋ฃ ์์ ๊ฐ๋ฅ ์นผ๋ผ ์ถ๊ฐ * refactor/OPS-373 : ๋ช ์์ null๊ณผ ๋ฏธ์ ๋ฌ ๊ตฌ๋ถ * [Feat/OPS-376] ์คํ์ด์ค ๋ชฉ๋ก ์ฐธ์ฌ ์ธ์ ๋ฐํ api ๊ตฌ์ฑ (#109) * refactor : dto ์ด๋ฆ ์ผ๋ถ ๋ณ๊ฒฝ * feat : ๊ตฌํ ์๋ฃ * feat : ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * fix : ํ ์คํธ ์ผ์ด์ค ์์ --------- * [Refactor/OPS-290] ๋ฐ์ดํฐ์์ค ์ ์ ํ ๊ธฐ๋ฅ ๊ณ ๋ํ (#112) * refactor/OPS-290 : ๋ฐ์ดํฐ์์ค ์ ์ ํ ๊ธฐ๋ฅ ๊ณ ๋ํ * [Feat/OPS-346] ๊ณต์ ํด๋ ๊ด๋ฆฌ (#113) * refactor/OPS-360 : OpenAPI ์ ๋ํ ์ด์ ์ถ๊ฐ * refactor/OPS-360 : NoResultException ์์ธ ๋ถ๋ฆฌ * refactor/OPS-360 : param ์ถ๊ฐ * refactor/OPS-360 : param ์ถ๊ฐ * refactor/OPS-360 : default ํด๋ CRUD ๋ก์ง ์์ * refactor/OPS-360 : ํด๋ ๋ฆฌ์คํธ๋ ํธ์ถ ๋ก์ง ์์ * refactor/OPS-346 : ๊ณต์ ํด๋ ๊ด๋ฆฌ * feat/OPS-365 : soft delete + ํด์งํต ์กฐํ ๊ตฌํ * feat/OPS-346 : ๊ณต์ ํด๋ ๊ด๋ฆฌ * feat/OPS-346 : ๊ณต์ ํด๋ ๊ด๋ฆฌ * refactor/OPS-346 : ๊ฐ์ธ / ๊ณต์ ํณ๋ ๊ด๋ฆฌ ๋ถ๋ฆฌ * refactor/OPS-346 : ๊ฒ์ ๊ธฐ๋ฅ ์ถ์ฒ ๋๋ฝ ์์ * feat : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ์ ์์ฑ ์ผ์๋ ๋ฐํ (#114) * [feat/OPS-377] ์ด์/ํ ์คํธ ์๋ฒ ๋ถ๋ฆฌ ์์ (#115) * feat/OPS-377 : ํ ์คํธ/์ด์ ํ๊ฒฝ ๋ถ๋ฆฌ * feat/OPS-377 : ํ ์คํธ/์ด์ ํ๊ฒฝ ๋ถ๋ฆฌ #2 * feat/OPS-377 : ํ ์คํธ/์ด์ ํ๊ฒฝ ๋ถ๋ฆฌ #3 * feat/OPS-377 : ํ ์คํธ/์ด์ ํ๊ฒฝ ๋ถ๋ฆฌ #4 * [Fix/OPS-378] ๋์๋ณด๋ ํ์ entity ์์ (#117) * fix : node, edge dto ์์ * fix : ํ ์คํธ ์ผ์ด์ค ์์ * fix : ํ ์คํธ ์์ ์๋ฃ * fix : ์คํ ์์ * fix : ์คํ ์ถ๊ฐ ์์ ; --------- * [Feat/OPS-379] liveblocks ์ฐ๋ (#118) * new : Liveblock API ํธ์ถ์ ์ํ Client ๋น ์์ฑ * feat : ์คํ์ด์ค ์์ฑ/์ญ์ ์ liveblocks room ๋ ํจ๊ป ์์ฑ/์ญ์ * fix : test ์ mock ๋น ์ฌ์ฉ * feat : jwt ๋ฐ๊ธ ๋ก์ง ๊ตฌํ --------- * [Feat/OPS-246] ๊ณต์ ํ์ผ ๊ด๋ฆฌ (#119) * refactor/OPS-360 : OpenAPI ์ ๋ํ ์ด์ ์ถ๊ฐ * refactor/OPS-360 : NoResultException ์์ธ ๋ถ๋ฆฌ * refactor/OPS-360 : param ์ถ๊ฐ * refactor/OPS-360 : param ์ถ๊ฐ * refactor/OPS-360 : default ํด๋ CRUD ๋ก์ง ์์ * refactor/OPS-360 : ํด๋ ๋ฆฌ์คํธ๋ ํธ์ถ ๋ก์ง ์์ * refactor/OPS-346 : ๊ณต์ ํด๋ ๊ด๋ฆฌ * feat/OPS-365 : soft delete + ํด์งํต ์กฐํ ๊ตฌํ * feat/OPS-346 : ๊ณต์ ํด๋ ๊ด๋ฆฌ * feat/OPS-346 : ๊ณต์ ํด๋ ๊ด๋ฆฌ * feat/OPS-246 : ๊ณต์ ํ์ผ ๊ด๋ฆฌ * refactor/OPS-346 : ๊ฐ์ธ / ๊ณต์ ํณ๋ ๊ด๋ฆฌ ๋ถ๋ฆฌ * refactor/OPS-346 : ๊ฐ์ธ / ๊ณต์ ํ์ผ ๊ด๋ฆฌ ๋ถ๋ฆฌ * refactor/OPS-346 : ๊ฒ์ ๊ธฐ๋ฅ ์ถ์ฒ ๋๋ฝ ์์ * feat/OPS-246 : ๊ฐ์ธ / ๊ณต์ ํ์ผ ๊ด๋ฆฌ ๋ถ๋ฆฌ * feat/OPS-246 : api ์์ฒญ ์์ * feat/OPS-246 : api ์์ฒญ ์์ - request ์ด๋ฆ ํต์ผ * refactor/OPS-246 : ๋จธ์ง * refactor/OPS-246 : ๋จธ์ง * [Feat/OPS-388] ๋ค๊ฑด์ญ์ DELETE ๋ณธ๋ฌธ ์์ (#122) * refactor/OPS-388 : ๋ค๊ฑด์ญ์ DELETE ๋ณธ๋ฌธ ์์ * refactor/OPS-388 : ๋ค๊ฑด์ญ์ DELETE ํ ์คํธ ์ผ์ด์ค ์์ * Hotfix/์คํ์ด์ค์ด๋๋ชฉ๋ก ๋ฐํ ์ invite id ํฌํจ (#123) * fix : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์ inviteId ๋ฐํํ๋๋ก ๋ณ๊ฒฝ * fix : ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ --------- * [Feat/OPS-379] liveblocks ์ฐ๋ (#124) * new : Liveblock API ํธ์ถ์ ์ํ Client ๋น ์์ฑ * feat : ์คํ์ด์ค ์์ฑ/์ญ์ ์ liveblocks room ๋ ํจ๊ป ์์ฑ/์ญ์ * fix : test ์ mock ๋น ์ฌ์ฉ * feat : jwt ๋ฐ๊ธ ๋ก์ง ๊ตฌํ * fix : SpaceArchiveDataSourceControllerTest์์ liveblocks ๋น mock ์ฒ๋ฆฌ * fix : ์คํ ์์ --------- * refactor : secrets๊ฐ ์ปจํ ์ด๋ ์คํ์ ํ๊ฒฝ๋ณ์๋ก ์ฃผ์ ๋๋๋ก ์์ (#120) * refactor: ๋น๋ ์ secrets.yml ํ์ผ ์ญ์ * refactor : ํ ์คํธ ์๋ฒ ํ๊ฒฝ๋ณ์ ์ฃผ์ ์ค์ * refactor : ์ด์์๋ฒ ํ๊ฒฝ๋ณ์ ์ฃผ์ ์ค์ * refactor : ์ด์ํ๊ฒฝ๋ณ YML ๋ถ๋ฆฌ ๋ฐ ๋ฐฐํฌ ํ๊ฒฝ ์ค์ ๊ตฌ์กฐ ๊ฐ์ * refactor : ๋ก์ปฌ(dev,test).yml ๋ณต๊ตฌ * refactor : ๋น๋์ ํ ์คํธ secrets.yml V2๋ก ๋ณ๊ฒฝ * refactor: gradle ํ ์คํธ์ ํ๊ฒฝ๋ณ์๋ก ์ค์ ๊ฐ ์ฃผ์ * refactor: ymlํ์ผ ๋ค์ฌ์ฐ๊ธฐ ์์ * refactor: yml ํ๋ ์ด์คํ๋ ๋ค์ด๋ฐ ๊ท์น ์ผ๊ด์ฑ ์ ์งํ๋๋ก ์์ * [Feat/ops-379] feat liveblocks ์ฐ๋ (#127) * new : Liveblock API ํธ์ถ์ ์ํ Client ๋น ์์ฑ * feat : ์คํ์ด์ค ์์ฑ/์ญ์ ์ liveblocks room ๋ ํจ๊ป ์์ฑ/์ญ์ * fix : test ์ mock ๋น ์ฌ์ฉ * feat : jwt ๋ฐ๊ธ ๋ก์ง ๊ตฌํ * fix : SpaceArchiveDataSourceControllerTest์์ liveblocks ๋น mock ์ฒ๋ฆฌ * fix : ์คํ ์์ * new : Liveblock API ํธ์ถ์ ์ํ Client ๋น ์์ฑ # Conflicts: # src/main/java/org/tuna/zoopzoop/backend/global/clients/liveblocks/LiveblocksClient.java --------- * fix : ์คํ ์์ (#128) * [Hotfix] ํ์ดํ๋ผ์ธ ์คํ ์์ (#129) * fix : ์คํ ์์ * fix : bucket ์คํ ์์ * fix: S3 ๊ด๋ จ ๊ฐ ๋กค๋ฐฑ --------- * refactor: s3 prefix separation (#131) * refactor: S3 prefix ํ๊ฒฝ๋ณ์ ๋ถ๋ฆฌ ๋ฐ server ํ๋กํ์ผ ์ค์ ์ถ๊ฐ * fix: cd ์คํ ์์ * fix : docker run ์ฃผ์ ์์ฐ * refactor: s3 prefix separation (#132) * refactor: S3 prefix ํ๊ฒฝ๋ณ์ ๋ถ๋ฆฌ ๋ฐ server ํ๋กํ์ผ ์ค์ ์ถ๊ฐ * fix: cd ์คํ ์์ * fix : docker run ์ฃผ์ ์์ฐ * fix: bucket ์คํ ์์ * fix: ์คํ ์ ๊ฑฐ * [fix/OPS-390] Secret ๊ฐ ๊ด๋ จ ์ผ๋ถ ์์ (#126) * fix/OPS-390 : secret ํ ํ๋ฆฟ ๋ฐ ์์ ์ฌํญ์ ๋ง๊ฒ ์ฝ๋ ๋ณ์๋ช ๋ณ๊ฒฝ. * feat/OPS-390: NEWS API ์์ ์ถ๊ฐ ์ฌํญ ๋ฐ์. * feat/OPS-390: CI ์ํฌํ๋ก์ฐ ์ผ๋ถ ์์ . * feat/OPS-390: ์ผ๋ถ placeholders ์์ . * feat/OPS-390: ์ผ๋ถ ๋ฌธ์ํ ํญ๋ชฉ ์์ . * refactor: s3 prefix ๋ถ๋ฆฌ ๋ฐ ci/cd ์์ ํ (#134) * refactor: S3 prefix ํ๊ฒฝ๋ณ์ ๋ถ๋ฆฌ ๋ฐ server ํ๋กํ์ผ ์ค์ ์ถ๊ฐ * fix: bucket ์คํ ์์ * [Hotfix] ๋ก๊ทธ์ธ ์๋ฌ ์์ (#135) * Update README.md * Remove unnecessary blank line in ApiV1DashboardController * [Feat/OPS-389] ์คํ์ด์ค ์ด๋ ์๋ฆผ ๊ตฌํ (#136) * new : emitter ๊ด๋ฆฌ service, controller ์์ฑ * feat : ํํธ๋นํธ ๋ก์ง ๊ตฌํ * fix : ๋น๋๊ธฐ ์ฒ๋ฆฌ ํ๋๋ก ๋ณ๊ฒฝ * feat : ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * fix : ํ ์คํธ ์์ * fix : ๋ถํ์ํ ์ด๋ ธํ ์ด์ ์ญ์ --------- * [feat/OPS-392] ์ฌ์ฉ์ ๊ฒ์ ๊ธฐ๋ฅ ์ถ๊ฐ (#137) * feat/OPS-392: ๊ฒ์ ๊ธฐ๋ฅ ์ถ๊ฐ & ElasticSearch ๊ตฌํ & ์ผ๋ถ ๋๋ฉ์ธ ์ค๋ฅ ์์ . * feat/OPS-392: CI ์ํฌํ๋ก์ฐ์ ElasticSearch ์๋น์ค ์ปจํ ์ด๋ ์์ฑ ๋ก์ง ์ถ๊ฐ. * feat/OPS-392: CI ์ํฌํ๋ก์ฐ์ ElasticSearch ์๋น์ค ์ปจํ ์ด๋ ์์ฑ ๋ก์ง ์ถ๊ฐ #2 * feat/OPS-392: ์ถ๊ฐ ๋๋ฉ์ธ ์ค๋ฅ ์์ . * feat/OPS-392: Docker-compose์ elastic-search ์๋น์ค ํญ๋ชฉ ์ถ๊ฐ. * fix: ๋๋ฉ์ธ ์์ฒญ ์ฌํญ์ ๋ง๊ฒ ์์ . (#138) * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. (#139) * ๋ฐฐํฌ์ฉ ์ปค๋ฐ (#140) * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #2 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. (#142) * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #2 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #3 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #4 * [Feat/OPS-391] ์์นด์ด๋ธ ์๋ฃ img ์๋ฃ ํ์ ์์ (#141) * feat/OPS-391 : ์ด๋ฏธ์ง ์์ multi part ๊ตฌํ * feat/OPS-391 : ์ด๋ฏธ์ง ์์ multi part ๊ตฌํ * refactor/OPS-391 : enum ๋์๋ฌธ์ ๋ฌด์ * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. (#143) * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #2 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #3 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #4 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #5 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #6 * fix: ์ด์์๋ฒ rabbitmq ํ๊ฒฝ๋ณ์ ์ค์ (#144) * feat/OPS-393 : ํฐ์คํ ๋ฆฌ ํฌ๋กค๋ฌ ์์ฑ (#145) * fix/OPS-394: API ๋ฌธ์ํ ๋ฐ s3 ์ค๋ฅ ์์ #1 (#146) * [fix/OPS-394] ๋ฌธ์ํ ๋ฐ ์ค๋ฅ ์์ 3 (#148) * fix/OPS-394: API ๋ฌธ์ํ ๋ฐ s3 ์ค๋ฅ ์์ #3 * fix/OPS-394: API ๋ฌธ์ํ ๋ฐ s3 ์ค๋ฅ ์์ #4 * refactor/OPS-395: ๊ฒ์ ๋ก์ง ์์ . (#149) * fix: ๋ฒจ๋ก๊ทธ ํฌ๋กค๋ฌ ์์ฑ์ผ์ ํ์ฑ ์ด์ ํด๊ฒฐ (#111) * fix : ์์ฑ์ผ์ ํ์ฑ ์ด์ ํด๊ฒฐ * refactor: velog ํฌ๋กค๋ฌ ์ฐ์ ์์ ๋๊ฒ ์ค์ * fix: ๋ฒจ๋ก๊ทธ ํฌ๋กค๋ฌ ์์ธ ์ฒ๋ฆฌ ์ถ๊ฐ (HTML ์์ ์์ ์ ๋น ๋ฌธ์์ด, ์์ฑ์ผ ์์ ์ ๊ธฐ๋ณธ๊ฐ) * fix : docker ์คํ์ AWS ํ๊ฒฝ๋ณ์๊ฐ ์ ๊ฑฐ (#150) * fix: ์ค๋ฐ๊ฟ ๋ฌธ์ ๋ค ๊ณต๋ฐฑ ์ ๊ฑฐ ๋ฐ OPENAI API Key ์ด์ํ๊ฒฝ๊ฐ ๋ถ๋ฆฌ (#152) * refactor/OPS-396: n-gram analyzer ์ ์ฉ์ ํตํ ๊ฒ์ ๊ฒฐ๊ณผ ํฅ์ & OAuth2SuccessHandler ๋ก์ปฌ ํ๊ฒฝ ๋ถ๊ธฐ. (#154) * refactor/OPS-398: ์ธ์ฆ/์ธ๊ฐ ์ค๋ฅ ์์ (#155) * [Refactor/OPS-380] ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ๊ฐ์ (#156) * refactor : membership ์กฐํ ์ lazy loading์ ์ํ n+1 ๋ฌธ์ ๊ฐ์ * refactor : space์ member ๋ชฉ๋ก ์กฐํ ์ n+ 1 ๋ฌธ์ ํด๊ฒฐ --------- * Update README.md (#157) * Create DEV_GUIDE.md (#158) * Update README.md (#159) * fix/OPS-399: ๋ฆฌํ๋ ์ ํ ํฐ ์ด์ ์์ . (#160) * refactor/OPS-397 : ๊ฒ์ ์๊ตฌ์ฌํญ ๋ฐ์ (#161) * hotfix : ์คํ์ด์ค ์ด๋ฏธ์ง ์ ์ฅ ๋ก์ง ์์ (#163) * fix : ํ์ฅ์ ์ถ๊ฐํ๊ณ ๋ก๊ทธ ๋ฑ๋๋ก ๋ณ๊ฒฝ * fix : prefix ๋ก ๊ตฌ๋ถํ๋๋ก ๋ณ๊ฒฝ * fix : CI ๊ณผ์ ์ ๋๋ฏธ prefix ๊ฐ ์ถ๊ฐ * fix : ํ๊ฒฝ ํ์ผ์ prefix ์ถ๊ฐ * fix : ์คํ ์์ --------- * fix/OPS-399: ๋ฆฌํ๋ ์ ํ ํฐ ์ด์ ์์ #2 (#165) * fix : ์ด๋ฏธ์ง ๊ฒฝ๋ก ๋ฐ ๋ฐํ ํ์ ์์ (#166) * fix : Url ์์ (#167) --------- Co-authored-by: Whitedoggy <[email protected]> Co-authored-by: Hyeok Jin Kim <[email protected]> Co-authored-by: Copilot <[email protected]> Co-authored-by: main <[email protected]> Co-authored-by: EpicFn <[email protected]> Co-authored-by: osh5030 <[email protected]>
taekkong
added a commit
that referenced
this pull request
Oct 14, 2025
* [feat/OPS-262] GlobalExceptionHandler ์ค์ (#8) * feat: GlobalExceptionHandler ์งํ ์ฌํญ ์ ์ฅ. * feat/OPS-262 : GlobalExceptionHandler ์์ฑ ์๋ฃ. * [feat/OPS-126] Member ๋๋ฉ์ธ ๊ธฐ์ด ์ค๊ณ (#9) * feat/OPS-127 : Member ์ํฐํฐ ์์ฑ(ํ๋, ์ฐ๊ด ๊ด๊ณ, ์์ฑ์, ๋ฉ์๋) * feat/OPS-128 : MemberRepository ์์ฑ(name, email ๊ฒ์ ์ต์ ์ถ๊ฐ) * feat: GlobalExceptionHandler ์์ฑ์ ์ํ ์งํ ์ฌํญ ์ ์ฅ. * feat/OPS-129 : MemberService ์์ฑ(์กฐํ, ์์ฑ/์์ , ์ญ์ ) * feat/OPS-126 : Member ๋๋ฉ์ธ ์ค๊ณ ์๋ฃ. Service ํ ์คํธ ์ฝ๋ ์ถ๊ฐ * [Chore/OPS-264] ci ์ํฌํ๋ก์ฐ ๊ฐ์ (#10) * chore/OPS-264 : ci.yml ์์ * Update .github/workflows/ci.yml Co-authored-by: Copilot <[email protected]> * Update .github/workflows/ci.yml Co-authored-by: Copilot <[email protected]> --------- Co-authored-by: Copilot <[email protected]> * Update .gitignore to exclude IntelliJ files (#11) Add .idea/ to .gitignore to exclude IntelliJ project files * feat/OPS-134 : ApiV1Controller ์์ฑ ์๋ฃ. (#12) * [chore/OPS-268] CI ์ํฌํ๋ก์ฐ ๊ฐ์ #2 (#15) ํ์ฌ ์์ ๋ก๊ทธ์ธ์ ์ฌ์ฉํ๋ ํน์ ๋ฏผ๊ฐํ ๊ฐ(JWT ํ ํฐ, ์์ client_id ๋ฑ)์ @value ์ด๋ ธํ ์ด์ ์ ํตํด ๋ฐ์์ค๊ณ ์์ต๋๋ค. ํ์ง๋ง ํด๋น ๋ฏผ๊ฐํ ๊ฐ์ ์ ์ฅํ yaml ํ์ผ์ ๋ ํฌ์งํ ๋ฆฌ์ ๋ฐ๋ก ์ฌ๋ฆด ์ ์๊ธฐ์, ๋ ํฌ์งํ ๋ฆฌ์ secrets์ ํด๋น ๊ฐ๋ค์ ์ ์ฅํด๋๊ณ , CI ์ํฌํ๋ก์ฐ์ ์ด ๊ฐ๋ค์ ์ฌ์ฉํด์ application-secrets.yml ํ์ผ์ ์์ฑํ๋ ๋ก์ง์ ์ถ๊ฐํ์ต๋๋ค. * [feat/OPS-155] ์์ ๋ก๊ทธ์ธ ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ(์นด์นด์ค) (#18) * feat/OPS-155 : ์์ ๋ก๊ทธ์ธ/ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ (์นด์นด์ค) ์๋ฃ. ์์ ์ฌํญ ๋ฐ์. * feat/OPS-155 : ์์ ๋ก๊ทธ์ธ/ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ (์นด์นด์ค) ์๋ฃ. ์์ ์ฌํญ ๋ฐ์ #2. * feat/OPS-155 : ์์ ๋ก๊ทธ์ธ/ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ (์นด์นด์ค) ์๋ฃ. ์์ ์ฌํญ ๋ฐ์ #3. * [chore/ops-130] Terraform์ ํ์ฉํด EC2 ์ธ์คํด์ค ์์ฑ ๋ฐ ์ค์ (#17) * chore/OPS-266 : EC2 ์ธ์คํด์ค ์์ฑ * chore/OPS-267 : VPC, IAM, SG ์ค์ * chore : ์๋ธ๋ท ์ค์ ์์ ๋ฐ nginx, mysql ๋ณผ๋ฅจ ๋ง์ดํธ ์ค์ ์ถ๊ฐ * chore : Dockerfile ์์ ๋ฐ EC2 ๋ณด์ ๊ทธ๋ฃน ์์ * chore : MYSQL ์ปจํ ์ด๋ ์คํ์ ์ด๊ธฐ DB ์ด๋ฆ ์ง์ ํ๋๋ก ์ค์ * fix/OPS-271 : SecurityConfig ๋ฐ Jwt ์ธ์ฆ ํํฐ ์์ (#19) * Feat/ops 209 be feat ํด๋ ์์ฑ (#21) * refactor: archive_id + name ๋ณตํฉ ์ ๋ํฌ ์ ์ฝ ์ถ๊ฐ * refactor: folder_id + title ๋ณตํฉ ์ ๋ํฌ ์ ์ฝ ์ถ๊ฐ * refactor: member_id, archive_id ๋จ์ผ ์ ๋ํฌ ์ ์ฝ ์ถ๊ฐ * refactor: ์ํฐํฐ ์ ์ฝ * feat/OPS-209-BE-feat-ํด๋-์์ฑ ์๋ฃ * feat/OPS-209-BE-feat-ํด๋-์์ฑ ์๋ฃ * fix : ์ปจ๋ฒค์ ํต์ผ (#22) Co-authored-by: EpicFn <[email protected]> * Feat/ops 210 be feat ํด๋ ์ญ์ (#23) * feat/OPS-210 : ํด๋ ์ญ์ ๊ตฌํ * [feat/OPS-151] llm ํ์ฉ ๋ฐ์ดํฐ ์ ์ ํ ๊ธฐ๋ฅ ๊ตฌํ (#27) - groq api๋ฅผ ์ด์ฉํ์ฌ ์์ฝ, ํ๊ทธ ์ถ์ถ ๊ธฐ๋ฅ ๊ตฌํ * [feat/OPS-158] ์์ ๋ก๊ทธ์ธ ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ(๊ตฌ๊ธ) (#28) * feat/OPS-158 : ์์ ๋ก๊ทธ์ธ(๊ตฌ๊ธ) ๊ตฌํ, JWT, Member, Auth ๋๋ฉ์ธ ๊ณ ๋ํ * feat/OPS-158 : ํ ์คํธ ์ผ์ด์ค ์์ . * fix/OPS-158 : template ์ถฉ๋ ํด๊ฒฐ. * fix/OPS-158 : @transactional import ์์ * feat/OPS-211 : ํด๋ ์ด๋ฆ ๋ณ๊ฒฝ ๊ตฌํ (#25) * feat/OPS-211 : ํด๋ ์ด๋ฆ ๋ณ๊ฒฝ ๊ตฌํ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * [chore/OPS-187] Terraform์ ํ์ฉํด RDS ์ธ์คํด์ค ์์ฑ ๋ฐ ์ค์ (#29) * chore/OPS-187 : Terraform์ ํ์ฉํด RDS ์ธ์คํด์ค ์์ฑ ๋ฐ ์ค์น * chore : RDS ์๋ธ๋ท ๊ทธ๋ฃน private์ผ๋ก ์์ * chore : AWS ๋ฆฌ์์ค ๋ค์ด๋ฐ ๊ท์น ์ ์ฉ * [feat] ์คํ์ด์ค ๋ฐ์ดํฐ ๊ด๋ฆฌ (#32) * new/OPS-222 : space controller, sevice, repository ๋น ์์ฑ # Conflicts: # src/main/java/org/tuna/zoopzoop/backend/global/initData/BaseInitData.java * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ์๋ํฌ์ธํธ ์ถ๊ฐ * new/OPS-222 : spaceControllerTest ํ์ผ ์ธํ * refactor/OPS-222 : ํ ์คํธ ํด๋์ค์ ๊ณต์ฉ ํํธ ์ถ์ ํด๋์ค๋ก ๋ถ๋ฆฌ * fix : ์ต์ ์ฌํญ ๋ฐ์ * fix/OPS-222 : ํ ์คํธ ์ฝ๋์์ ํ์ ๋ค๋ฅด๋ ๊ฑฐ ์์ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๊ตฌํ * feat/OPS-222 : space ๋จ์ ํธ๋ค๋ฌ, ์ปค์คํ ์๋ฌ ์์ฑ * fix/OPS-222 : controller ์์ฑ ํ ์คํธ ํต๊ณผ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๋ก์ง ์์ฑ * feat/OPS-222 : ์คํ์ด์ค ์ญ์ ๊ตฌํ * fix/OPS-222 : ํ ์คํธ ์ผ์ด์ค ํต๊ณผ * feat/OPS-245 : controller ๋จ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-245 : ์คํ์ด์ค ๋ช ๋ณ๊ฒฝ ๊ตฌํ * fix/OPS-244 : ์ด๋ฆ ๋ณ๊ฒฝ ์ saveAndFlush๋ก ์ฆ์ ๋ฐ์ * chore/OPS-222 : develop ์ต์ ์ฌํญ ๋ฐ์ * fix : ์ ์ฅ * fix/OPS-222 : globalExceptionHandler ์ปจ๋ฒค์ ํต์ผ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ controller ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-244 : membership ๊ด๋ฆฌ ๋น ์์ฑ * feat/OPS-244 : membership ์์ฑ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ฑ * fix : ํ ์คํธ ์ผ์ด์ค ๊ฐ ์ถฉ๋ ํด๊ฒฐ ์ค * fix : ์ต์ ์ฌํญ ๋ฐ์ * ์์์ ์ฅ * ์ด๊ธฐ ์ํ * fix : ๋ฏธ๋ด์ฑ ์ ์ฉ * feat/OPS-244 : ์คํ์ด์ค ๋ฉค๋ฒ ์ถ๊ฐ ๊ธฐ๋ฅ * fix : spaceControllerTest์ memberControllerTest ๊ฐ ์ถฉ๋ ํด๊ฒฐ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * chore/OPS-244 : ์ธ์ฆ ๊ด๋ จ ์ฝ๋ ์ฃผ์ ์ฒ๋ฆฌ * feat/OPS-270 : ์คํ์ด์ค ๋ก์ง์ ์ฌ์ฉ์ ์ ๋ณด ์ฒดํฌ ์ถ๊ฐ * feat/OPS-22 : ํ ์คํธ ์ผ์ด์ค์ WithUserDetails ๋ฐ์ * feat/OPS-222 : ์ธ์ฆ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * fix : ๋ถํ์ํ ์ฃผ์ ์ญ์ * new/OPS-222 : space controller, sevice, repository ๋น ์์ฑ # Conflicts: # src/main/java/org/tuna/zoopzoop/backend/global/initData/BaseInitData.java * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ์๋ํฌ์ธํธ ์ถ๊ฐ * new/OPS-222 : spaceControllerTest ํ์ผ ์ธํ * refactor/OPS-222 : ํ ์คํธ ํด๋์ค์ ๊ณต์ฉ ํํธ ์ถ์ ํด๋์ค๋ก ๋ถ๋ฆฌ * fix : ์ต์ ์ฌํญ ๋ฐ์ * fix/OPS-222 : ํ ์คํธ ์ฝ๋์์ ํ์ ๋ค๋ฅด๋ ๊ฑฐ ์์ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๊ตฌํ * feat/OPS-222 : space ๋จ์ ํธ๋ค๋ฌ, ์ปค์คํ ์๋ฌ ์์ฑ * fix/OPS-222 : controller ์์ฑ ํ ์คํธ ํต๊ณผ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๋ก์ง ์์ฑ * feat/OPS-222 : ์คํ์ด์ค ์ญ์ ๊ตฌํ * fix/OPS-222 : ํ ์คํธ ์ผ์ด์ค ํต๊ณผ * feat/OPS-245 : controller ๋จ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-245 : ์คํ์ด์ค ๋ช ๋ณ๊ฒฝ ๊ตฌํ * fix/OPS-244 : ์ด๋ฆ ๋ณ๊ฒฝ ์ saveAndFlush๋ก ์ฆ์ ๋ฐ์ * chore/OPS-222 : develop ์ต์ ์ฌํญ ๋ฐ์ * fix : ์ ์ฅ * fix/OPS-222 : globalExceptionHandler ์ปจ๋ฒค์ ํต์ผ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ controller ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-244 : membership ๊ด๋ฆฌ ๋น ์์ฑ * feat/OPS-244 : membership ์์ฑ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ฑ * fix : ํ ์คํธ ์ผ์ด์ค ๊ฐ ์ถฉ๋ ํด๊ฒฐ ์ค * fix : ์ต์ ์ฌํญ ๋ฐ์ * ์์์ ์ฅ * ์ด๊ธฐ ์ํ * fix : ๋ฏธ๋ด์ฑ ์ ์ฉ * feat/OPS-244 : ์คํ์ด์ค ๋ฉค๋ฒ ์ถ๊ฐ ๊ธฐ๋ฅ * fix : spaceControllerTest์ memberControllerTest ๊ฐ ์ถฉ๋ ํด๊ฒฐ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * chore/OPS-244 : ์ธ์ฆ ๊ด๋ จ ์ฝ๋ ์ฃผ์ ์ฒ๋ฆฌ * feat/OPS-270 : ์คํ์ด์ค ๋ก์ง์ ์ฌ์ฉ์ ์ ๋ณด ์ฒดํฌ ์ถ๊ฐ * feat/OPS-22 : ํ ์คํธ ์ผ์ด์ค์ WithUserDetails ๋ฐ์ * feat/OPS-222 : ์ธ์ฆ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * fix : ๋ถํ์ํ ์ฃผ์ ์ญ์ * fix : ๋ถํ์ํ ํ์ผ ์ญ์ --------- Co-authored-by: EpicFn <[email protected]> * Ops 272 be feat ์๋ฃ ์ด๋ฆ ์กฐํ (#31) * feat/OPS-211 : ํด๋ ์ด๋ฆ ๋ณ๊ฒฝ ๊ตฌํ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * feat/OPS-272 : ํด๋/ํ์ผ ์กฐํ ๊ตฌํ * refactor/OPS-272 : tag ์์ฑ์ ์ถ๊ฐ * feat/OPS-195 : ๋ด์ค ๋ชฉ๋ก ์กฐํ ๊ธฐ๋ฅ ๊ตฌํ(์ต์ ๋ด์ค, ํค์๋ ๊ธฐ๋ฐ). ์๋น์ค ํ ์คํธ ์ถ๊ฐ. (#33) * refactor/OPS-277 : default ํด๋ ์๋ ์์ฑ (#34) * [chore/OPS-278] Auth, Member, News ๋๋ฉ์ธ ๋ฌธ์ํ ๋ฐ ๊ณ ๋ํ. (#35) * chore/OPS-278 : Auth ๋๋ฉ์ธ ๋ฌธ์ํ ์๋ฃ & ApiV1MemberController ์ถ๊ฐ ๊ธฐ๋ฅ ๊ตฌํ. * refactor/OPS-278 : ApiV1MemberController ์ถ๊ฐ ์ฌํญ์ ๋ง๊ฒ ํ ์คํธ ์ถ๊ฐ ๊ตฌํ. * refactor/OPS-278 : Member ์์ฑ ์, ๋๋คํ UUID์ ์ 5๊ธ์๋ฅผ ํ๊ทธ๋ก ์ฌ์ฉํ๋๋ก ๋ณ๊ฒฝ. * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- Co-authored-by: EpicFn <[email protected]> * refactor/OPS-283 : datasource ์ํฐํฐ ์์ (#39) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * [feat/OPS-175] ์น ํฌ๋กค๋ง ๋ฐ์ดํฐ ์ ์ ํ ๊ธฐ๋ฅ ๊ตฌํ (#41) * feat/OPS-175 : ์น ํฌ๋กค๋ง ๋ฐ์ดํฐ ์ ์ ํ ๊ธฐ๋ฅ ๊ตฌํ * [refactor/OPS-287] News ๋๋ฉ์ธ ๊ณ ๋ํ (#42) * refactor/OPS-287 : newsSearch ๋ฉ์๋ ๋ก์ง ๋ณ๊ฒฝ ๋ฐ ์ผ๋ถ API ๋ฌธ์ํ. * refactor/OPS-287 : NewsServiceTest API๋ฅผ ํธ์ถํ๋ ๋ฐฉ์์ผ๋ก ๋ณ๊ฒฝ. * Ops 226 be feat ์๋ฃ ๋ฑ๋ก (#44) * refactor/OPS-283 : datasource ์ํฐํฐ ์์ * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- Co-authored-by: EpicFn <[email protected]> * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * feat/OPS-226 : ์๋ฃ ๋ฑ๋ก ๊ตฌํ * refactor/OPS-226 : ๋ฉ์๋ ๋ช ์์ --------- Co-authored-by: Hyeok Jin Kim <[email protected]> Co-authored-by: EpicFn <[email protected]> * Ops 215 be feat ์๋ฃ ์ญ์ (#46) * refactor/OPS-283 : datasource ์ํฐํฐ ์์ * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- Co-authored-by: EpicFn <[email protected]> * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * feat/OPS-226 : ์๋ฃ ๋ฑ๋ก ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ --------- Co-authored-by: Hyeok Jin Kim <[email protected]> Co-authored-by: EpicFn <[email protected]> * [feat/OPS-293] LiveBlocks๋ฅผ ์ํ React-flow ๋ฐ์ดํฐ ๊ด๋ฆฌ ๋๋ฉ์ธ ์ค๊ณ ์๋ฃ. ํ ์คํธ ์ถ๊ฐ. (#47) * feat/OPS-293 : LiveBlocks๋ฅผ ์ํ React-flow ๋ฐ์ดํฐ ๊ด๋ฆฌ ๋๋ฉ์ธ ์ค๊ณ ์๋ฃ. ํ ์คํธ ์ถ๊ฐ. * feat/OPS-293 : folder ํ ์คํธ์ @transactional ์ถ๊ฐ. * feat/OPS-293 : MemberServiceTest ์์ #1 * feat/OPS-293 : MemberServiceTest ์์ #2 * feat/OPS-293 : Folder ํ ์คํธ์ ActiveProfile(test) ์ถ๊ฐ. * feat/OPS-293 : ํ ์คํธ์ ๋ฌด๊ฒฐ์ฑ ๊ฒ์ฆ์ ์ํ @afterall, @AfterEach ์ถ๊ฐ. * feat/OPS-293 : ์ผ๋ถ ์์ . * feat/OPS-293 : ์ง์ง ๋ง์ง๋ง ์์ . * [chore/ops-132] CI/CD ํ์ดํ๋ผ์ธ ๊ตฌ์ถ (#43) * chore/OPS-133 : CI ํ์ดํ๋ผ์ธ ๊ตฌ์ถ * chore: ํ ์คํธ/์ด์ ํ๊ฒฝ์ฉ GitHub Actions Terraform ์๋ ์ธํ๋ผ ์ ์ฉ ์ํฌํ๋ก์ฐ ์ถ๊ฐ * chore : ํ๊ฒฝ๋ณ์๋ก test/prod ์๋ฒ ๋ถ๋ฆฌ ๊ฐ๋ฅํ๋๋ก ์ค์ * chore/OPS-135 : CD ์ํฌํ๋ก์ฐ ์ถ๊ฐ * chore: CI ํ CD ์คํ๋๋๋ก ์ค์ * chore : CI ์ํฌํ๋ก์ฐ job ๋ถ๋ฆฌ(ํ ์คํธ,๋น๋/๋์ปค ๋น๋,ghcr push) * chore : docker build jobs์์ checkout ๋จ๊ณ ์ถ๊ฐ * chore: CI ์ํฌํ๋ก์ฐ job ๊ตฌ๋ถ ์์ฐ * chore : develop/main ๋ธ๋์น์ ๋ฐ๋ผ CI/CD ์ํฌํ๋ก์ฐ ๋ถ๋ฆฌ * chore : Spring Boot Acutator ์์กด์ฑ ์ถ๊ฐ * chore: Actions์์ SSH ์ ์ ํ docker ์คํ ๊ถํ ๊ฐ๋๋ก ์ค์ * chore: ์ปจํ ์ด๋ ์คํ ๋ก๊ทธ ํฐ๋ฏธ๋์ ์ถ๋ ฅ ์ค์ * chore : ํฌ์ค์ฒดํฌ ์ค์ * chore: secrets ์ง์ ssh ํ๊ฒฝ ๋ณ์๋ก ์ ๋ฌ * chore: ํ๊ฒฝ๋ณ์ ์ง์ docker run์ ๋ฃ๊ธฐ * chore: spdocker run ์์ ring profile ์ ๊ฑฐ * chore: nginx ์ค์ * chore: test-cd ์์ * chore: test-cd ์์ 2 * chore: ghcr ๋ก๊ทธ์ธ ํ ํฐ ์์ * chore: ๋์ปค ์ด๋ฏธ์ง pull ์ด๋ฆ ์์ * chore: ssh ๋ด ์์ ํ ghcr ๋ก๊ทธ์ธ * chore : ์ด๋ฏธ pullํ ์ด๋ฏธ์ง์ run ์ด๋ฏธ์ง ์ด๋ฆ ์ผ์น์ํค๊ธฐ * chore: mysql driver ์์กด์ฑ ์ถ๊ฐ * chore : ํฌ์ค์ฒดํฌ ์์ฒญ ์คํ๋ง ์ํ๋ฆฌํฐ ํํฐ์ ๊ฑธ๋ฆฌ์ง ์๋๋ก ์ค์ * chore: nginx ํฌํธ ์ค์์นญ ์ค์ * chore: nginx ํฌํธ ์ค์์นญ ์ค์ ์์ * chore: nginx ํฌํธ ์ค์์นญ ์ค์ ์์ 2 * chore: ์ด์์๋ฒ CD ์ํฌํ๋ก์ฐ ์์ * chore : prod-server ์ํฌํ๋ก์ฐ ํ์ฑํ ๊ฒฝ๋ก ์ค์ * chore : test commit ๋์ค์ ์ง์ฐ๊ธฐ * [Feat/OPS-214] ์คํ์ด์ค ๋ฉค๋ฒ ๊ด๋ฆฌ (#50) * feat/OPS-227 : ์คํ์ด์ค ๋ฉค๋ฒ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-227 : ์คํ์ด์ค ๋ชฉ๋ก ๋ฐํ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-251 : ๊ถํ ๋ณ๊ฒฝ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-214 : ๊ถํ ๋ณ๊ฒฝ ์๋ํฌ์ธํธ ๊ตฌํ * fix/OPS-214 : ๋จ์ ๋ฉ์ธ์ง ์ค๋ฅ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-214 : ๋ก์ง ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-251 : globalExceptionHandler์ ์ญ์ง๋ ฌํ ์คํจ ์๋ฌ ์ถ๊ฐ * refactor/OPS-214 : ๋น์ฆ๋์ค ๋ก์ง์ ์๋น์ค ๊ณ์ธต์ ์ผ์ * feat/OPS-231 : ์คํ์ด์ค ์ด๋ ์ปจํธ๋กค๋ฌ ํ ์คํธ์ผ์ด์ค ์์ฑ * feat/OPS-231 : ์คํ์ด์ค ์ด๋ ๋ก์ง ์์ฑ * feat/OPS-231 : ์คํ์ด์ค์ด๋ ์๋น์ค ๋น ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * feat/OPS-228 : ํ์ ํด์ถ ์ปจํธ๋กค๋ฌ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feeat/OPS-229 : ํ์ ํด์ถ ๊ตฌํ ์๋ฃ * fix : ๊ธฐ์กด ํ ์คํธ ์ผ์ด์ค ์ผ๊ด์ฑ ์๊ฒ ์์ * feat : ๋ฉค๋ฒ ํด์ถ ์๋น์ค ํ ์คํธ ์ฝ๋ ์์ฑ * refactor : DTO ํจํค์ง ๋ณ๊ฒฝ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ์ปจํธ๋กค๋ฌ ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ๋ก์ง ์์ฑ * refactor : space ๋๋ฉ์ธ dto ํจํค์ง ๋ณ๊ฒฝ * feat/OPS-227 : ์คํ์ด์ค ๋ฉค๋ฒ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-227 : ์คํ์ด์ค ๋ชฉ๋ก ๋ฐํ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-251 : ๊ถํ ๋ณ๊ฒฝ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-214 : ๊ถํ ๋ณ๊ฒฝ ์๋ํฌ์ธํธ ๊ตฌํ * fix/OPS-214 : ๋จ์ ๋ฉ์ธ์ง ์ค๋ฅ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-214 : ๋ก์ง ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-251 : globalExceptionHandler์ ์ญ์ง๋ ฌํ ์คํจ ์๋ฌ ์ถ๊ฐ * refactor/OPS-214 : ๋น์ฆ๋์ค ๋ก์ง์ ์๋น์ค ๊ณ์ธต์ ์ผ์ * feat/OPS-231 : ์คํ์ด์ค ์ด๋ ์ปจํธ๋กค๋ฌ ํ ์คํธ์ผ์ด์ค ์์ฑ * feat : ์ต์ ์ฌํญ ๋ฐ์ * feat/OPS-231 : ์คํ์ด์ค์ด๋ ์๋น์ค ๋น ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * feat/OPS-228 : ํ์ ํด์ถ ์ปจํธ๋กค๋ฌ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feeat/OPS-229 : ํ์ ํด์ถ ๊ตฌํ ์๋ฃ * fix : ๊ธฐ์กด ํ ์คํธ ์ผ์ด์ค ์ผ๊ด์ฑ ์๊ฒ ์์ * feat : ๋ฉค๋ฒ ํด์ถ ์๋น์ค ํ ์คํธ ์ฝ๋ ์์ฑ * refactor : DTO ํจํค์ง ๋ณ๊ฒฝ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ์ปจํธ๋กค๋ฌ ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ๋ก์ง ์์ฑ * refactor : space ๋๋ฉ์ธ dto ํจํค์ง ๋ณ๊ฒฝ --------- Co-authored-by: EpicFn <[email protected]> * refactor/OPS-308 : ๋๋ฉ์ธ ๋ถ๋ฆฌ & CI ์ํฌํ๋ก์ฐ์ application-secrets-server.yml ์ถ๊ฐ. (#52) * Ops 255 be feat ์๋ฃ ์์ (#54) * refactor/OPS-283 : datasource ์ํฐํฐ ์์ * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- Co-authored-by: EpicFn <[email protected]> * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * feat/OPS-226 : ์๋ฃ ๋ฑ๋ก ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-255 : ์๋ฃ ์ด๋ ๋ฐ ์์ ๊ตฌํ --------- Co-authored-by: Hyeok Jin Kim <[email protected]> Co-authored-by: EpicFn <[email protected]> * feat/OPS-289 : dataprocessor ์๋น์ค ์์ฑ (#59) * fix/OPS-318 : proxy host ์ค์์นญรฌ๏ฟฝ ssl ์ธ์ฆ์ ์ ์ง (#60) * [refactor/OPS-310] redirect url ๋ณ๊ฒฝ (#53) * refactor/OPS-310 : redirect-url ๋ณ๊ฒฝ. * refactor/OPS-310 : ์์ ์์ . * refactor/OPS-310 : ๋ ํ๋์ ์์ ์์ . * refactor/OPS-310 : ํฐ ์์ . * refactor/OPS-310 : ํ ์คํธ * refactor/OPS-310 : ์์ฒญ ์ฌํญ ๋ฐ์. * refactor/OPS-310 : ์์ฒญ ์ฌํญ ๋ฐ์ #2 * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ (#64) * [refactor/OPS-323] News API ์กฐํ ๋ก์ง ์์ . (#65) * ๋ฐฐํฌ ํ ์คํธ #2 * ๋ก์ง ์์ ํ ์คํธ * ๋ก์ง ์์ ํ ์คํธ #2 * refactor/OPS-322 : source ์นผ๋ผ๋ช ์์ (#68) * refactor/OPS-322 : source ์นผ๋ผ๋ช ์์ * refactor/OPS-322 : source ์นผ๋ผ๋ช ์์ * feat/OPS-321 : dataProcessorService์์ ์์ฝ ๋ก์ง ์์ฑ (#69) * [fix/OPS-317] CI/CD ํ์ดํ๋ผ์ธ ์ด๋ฒคํธ ๋ถ๋ฆฌ (#66) * fix : prod-server nginx ์ ๋ณด ์ถ๋ ฅ ์ ๊ฑฐ * fix : prod-server CD ์ํฌํ๋ก์ฐ main์ push๋ ๋ ์คํ๋๋๋ก ์์ * fix : test-server CI๋ pr์ develop์ ์คํ, CD๋ push๋ ๋ ์คํ * fix : test-server CI ์ํฌํ๋ก์ฐ์์ CD ๋ถ๋ถ ์ ๊ฑฐ * chore : ๋น๋์ aws๊ด๋ จ ์ ๋ณด application-secret.yml์ ๋ค์ด๊ฐ๋๋ก ์ค์ (#73) * chore : S3 ์ฌ์ฉ์ ์ํด ๋น๋์ AWS ์ ๋ณด application-secrets.yml์ ์ถ๊ฐ๋๋๋ก ์ค์ * chore : ์ญํ ์ S3 ์ ๊ทผ ์ ์ฑ ๋ถ์ฐฉ ํ๋๋ก ์ค์ * chore : รฃyml์ ์ถ๊ฐ์ ๋ณด ๋ฃ๋๋ก ์ค์ * [Feat/OPS-275] ์คํ์ด์ค ์ธ๋ค์ผ ์ด๋ฏธ์ง ์ ์ฅ (#71) * chore : S3 ํ๊ฒฝ ์ค์ * feat : S3Service ๊ตฌ์ฑ * chore : multipart ๋ฐ์ดํฐ ํฌ๊ธฐ ์ค์ * feat : S3 ์ ๋ก๋ ํ ์คํธ์ฉ ์๋ํฌ์ธํธ ์์ฑ * feat : S3 ์ฐ๋ ์๋ฃ * feat : space entity์ imageUrl ํญ๋ชฉ ์ถ๊ฐ * feat : ์ธ๋ค์ผ ์บก์ฒ ํ ์คํธ์ฉ * feat : ์ธ๋ค์ผ ์ดฌ์ ํ ์คํธ ์๋ํฌ์ธํธ ์์ฑ * feat : ์คํ์ด์ค ์ธ๋ค์ผ ๊ฐฑ์ API ์์ฑ * feat : ์คํ์ด์ค ์ด๋ฏธ์ง ๊ฐฑ์ ๊ธฐ๋ฅ ์์ฑ * feat : ์คํ์ด์ค ๋ชฉ๋ก ๋ฐํ ์ ์ธ๋ค์ผ url ๊ฐ์ด ๋ฐํ * feat : ์คํ์ด์ค ๋จ๊ฑด ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat : ์คํ์ด์ค ๋จ๊ฑด ์กฐํ ๊ตฌํ * feat : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ํ์ด์ง ๊ธฐ๋ฅ ์ถ๊ฐ --------- Co-authored-by: EpicFn <[email protected]> * [feat/OPS-324] ํฌ๋กฌ ํ์ฅ ํ๋ก๊ทธ๋จ ์์ ๋ก๊ทธ์ธ ๋ถ๊ธฐ & ์์ ๋ก๊ทธ์ธ ํ ์คํธ API ์ถ๊ฐ. (#70) * feat/OPS-324 : ํ์ฅ ํ๋ก๊ทธ๋จ ๋ถ๊ธฐ ๋ฐ ์์ ๋ก๊ทธ์ธ ํ ์คํธ API ์ถ๊ฐ. * feat/OPS-324 : ํ ์คํธ ๋ก์ง ์ผ๋ถ ์์ . * feat/OPS-324 : ํ ์คํธ ๋ก์ง ์ผ๋ถ ์์ . #2 * feat/OPS-324 : ํ ์คํธ ์๋ฃ, ํ ์คํธ ์ฝ๋ ์ ๊ฑฐ. * feat/OPS-324 : ๋ก๊ทธ์ธ ๋ถ๊ธฐ ์์ . * feat/OPS-324 : state ์ ๋ณด๋ฅผ ์ ์ฅํ๋ resolver ์ถ๊ฐ. * feat/OPS-324 : session ๋ฑ๋ก์ ์ํ OAuth2LoginSourceFilter ํด๋์ค ์ถ๊ฐ. * feat/OPS-324 : ํด๊ฒฐ * fix : ci ์ secrets ์์ S3 ๊ด๋ จ ์ํฌ๋ฆฟ ๊ฐ ์ญ์ ํ๋๋ก ๋ณ๊ฒฝ(๋ฒํท๋ช ์ ์ธ) (#74) * fix : ci ์ secrets ์์ S3 ๊ด๋ จ ์ํฌ๋ฆฟ ๊ฐ ์ญ์ ํ๋๋ก ๋ณ๊ฒฝ(๋ฒํท๋ช ์ ์ธ) * fix : CI ์คํ ์์ * fix : build ๋จ๊ณ์์ testest๋ฅผ ์ํํ์ง ์๋๋ก ๋ณ๊ฒฝ --------- Co-authored-by: EpicFn <[email protected]> * [feat/OPS-198] ์์นด์ด๋ธ ์ ๋ณด๋ก ๋ด์ค ๋ชฉ๋ก ์กฐํ (#75) * feat/OPS-198 : ์์นด์ด๋ธ ๊ธฐ๋ฐ ๋ด์ค ์กฐํ ๊ตฌํ. * feat/OPS-198 : ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ. * feat/OPS-265 : LLM-ํ์ฉ-๋ฐ์ดํฐ-์ ์ ํ-์-๊ธฐ์กด-์์นด์ด๋ธ์-ํ๊ทธ-์ฐ๋ (#77) * refactor/OPS-319: ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ (#76) * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * fix : SpringDoc๊ณผ Spring AI ๊ฐ ์์กด์ฑ ์ถฉ๋ ํด๊ฒฐ (#79) * [Feat/OPS-327] ์๋ฃ ๋ฑ๋ก llm ์ฐ๋ (#78) * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-327 : ์๋ฃ ๋ฑ๋ก LLM ์ฐ๋ * [feat/OPS-328] ์ธ์ฆ/์ธ๊ฐ ๋ก์ง ๋ณ๊ฒฝ (#80) * feat/OPS-328 : RefreshToken์ ์๋ฒ์์ ์ ์ฅํ๋๋ก ๋ณ๊ฒฝ. API ์ผ๋ถ ์์ . * feat/OPS-328 : ํ์ฅ ํ๋ก๊ทธ๋จ ๋ก๊ทธ์ธ ๋ฉ์๋ ์ถ๊ฐ ๋ฐ ๋ฐ์ดํฐ ์บ์ฑ ๋ฉ์๋ ์ถ๊ฐ. * [refactor/OPS-337] ์๊ตฌ์ฌํญ ๋ฐ์ ๋ฐ ์ผ๋ถ ๋ก์ง ์์ . (#81) * refactor/OPS-337 : ํ๋ก ํธ ์๊ตฌ์ฌํญ ๋ฐ์ ๋ฐ ์๋ฌ ์์ . * refactor/OPS-337 : ํ ์คํธ ์ผ์ด์ค ์์ . * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ (#82) * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : mock ์ถ๊ฐ๋ก ์ธํ testcase ์์ * [feat/OPS-338] ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ (#83) * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : mock ์ถ๊ฐ๋ก ์ธํ testcase ์์ * refactor/OPS-338 : Dev ํ ํฐ ๋ฐ๊ธ ์ปจํธ๋กค๋ฌ ์ถ๊ฐ * [Feat/OPS-326] ๋์๋ณด๋ ๋ฐ์ดํฐ ์ ์ฅ ์ฒด๊ณ ๊ตฌ์ถ (#85) * refactor : graph ๋๋ฉ์ธ์ dashboard ๋๋ฉ์ธ์ผ๋ก ์์ , dashboard ์ํฐํฐ ์์ฑ * feat : ์คํ์ด์ค ๋จ๊ฑด ์กฐํ ์ ๋์๋ณด๋ id๋ ํจ๊ป ๋ฐํ * refactor : API ๋ช ๋ณ๊ฒฝ * dashboard ๊ธฐ๋ฐ์ผ๋ก ์ ์ฅ/์กฐํ ๋๋๋ก ๋ณ๊ฒฝ * refactor : ํ ์คํธ ์ฝ๋ ์์ * fix : ๋ฐํ ๋ฉ์ธ์ง ์์ * feat : ์๋ช ๊ฒ์ฆ ๋ก์ง ๊ตฌํ * refactor : signature ์๋น์ค ๋ถ๋ฆฌ * fix : ์คํ ์์ * fix : CI ํ์ดํ๋ผ์ธ ์์ --------- Co-authored-by: EpicFn <[email protected]> * [feat/OPS-329] Sentry๋ฅผ ํตํ ๋ชจ๋ํฐ๋ง ํ๊ฒฝ ๊ตฌ์ถ. (#86) * feat/OPS-329 : Sentry๋ฅผ ํตํ ๋ชจ๋ํฐ๋ง ํ๊ฒฝ ๊ตฌ์ถ. * feat/OPS-329: ์ถ๊ฐ๋ก ํ๋ก ํธ ์๊ตฌ ์ฌํญ ๋ฐ์. * refactor/OPS-353 : ๋ถ๋ฆฌ ์๋ฃ. (#87) * [refactor/OPS-354] ํ ์คํธ ์ผ์ด์ค ์ฌ์ฉ ํ๋กํ ๋ณ๊ฒฝ. (#88) * refactor/OPS-354 : ํ ์คํธ ์ผ์ด์ค ์ฌ์ฉ ํ๋กํ ๋ณ๊ฒฝ. * refactor/OPS-354 : ์ด๋๋ ์๋ผ? * refactor/OPS-355 : ์๊ตฌ ์ฌํญ ๋ฐ์. (#91) * feat/OPS-358: Redis ์์กด์ฑ ์ถ๊ฐ ๋ฐ RedisConfig ์ค์ ์๋ฃ. AuthResultData ์ง๋ ฌํ ๋ฐ AuthResult ํด๋์ค์ TTL ๋์ . (#92) * feat/OPS-356 : ๋ค์ด๋ฒ ๋ธ๋ก๊ทธ ํฌ๋กค๋ฌ ์์ฑ (#93) * [feat/OPS-252] ์กฐ๊ฑด๋ณ ์๋ฃ ๊ฒ์ (#89) * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-327 : ์๋ฃ ๋ฑ๋ก LLM ์ฐ๋ * refactor/OPS-252 : ์กฐ๊ฑด๋ณ ์๋ฃ ๊ฒ์ ๊ตฌํ * refactor/OPS-252 : ์กฐ๊ฑด๋ณ ์๋ฃ ๊ฒ์ * fix : ์คํ์ด์ค, ์ฌ์ฉ์ ๋ชฉ๋ก ๋ฐํ ์ ํญ์ id ์ค๋ฆ์ฐจ์ ์ ๋ ฌ (#94) Co-authored-by: EpicFn <[email protected]> * IllegalStateException(๋์์ฑ ๋ฌธ์ )๊ด๋ จ ์ฒ๋ฆฌ ๋ฉ์๋ ์ถ๊ฐ. (#95) * [fix/OPS-362] ์๊ตฌ ์ฌํญ ๋ฐ์ (#96) * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์. * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#2 * [feat/OPS-341] ๋ฒจ๋ก๊ทธ ํฌ๋กค๋ฌ ์์ฑ (#90) * feat/OPS-341 : Velog ํฌ๋กค๋ฌ ์์ฑ * fix : createDate,modifyDate ์๋ ์ ์ฉ๋๋๋ก ์ค์ * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#3 (#97) * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#4 (#98) * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#5 (#99) * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#6 (#100) * [refactor/OPS-360] folder&datasource ๋ฆฌํํ ๋ง (#101) * refactor/OPS-360 : OpenAPI ์ ๋ํ ์ด์ ์ถ๊ฐ * refactor/OPS-360 : NoResultException ์์ธ ๋ถ๋ฆฌ * refactor/OPS-360 : param ์ถ๊ฐ * refactor/OPS-360 : param ์ถ๊ฐ * refactor/OPS-360 : default ํด๋ CRUD ๋ก์ง ์์ * refactor/OPS-360 : ํด๋ ๋ฆฌ์คํธ๋ ํธ์ถ ๋ก์ง ์์ * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#7 (#102) * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#8 (#103) * hotfix/OPS-346 : ํ์ผ ์กฐํ ์์ (#104) * [feat/OPS-365 ] soft delete + ํด์งํต ์กฐํ ๊ตฌํ (#105) * feat/OPS-365 : soft delete + ํด์งํต ์กฐํ ๊ตฌํ * refactor/OPS-246 : ์๊ตฌ์ฌํญ ๋ฆฌํฉํ ๋ง * chore : rabbitmq ํ๊ฒฝ์ค์ (#106) * chore : rabbitmq ๋ก์ปฌ ๊ฐ๋ฐ ํ๊ฒฝ ์ค์ * chore : rabbitmq ๊ด๋ จ springboot ํ๊ฒฝ ์ค์ * chore: rabbitmq ์์กด์ฑ ์ถ๊ฐ * [Feat/OPS-344] message queue ๊ตฌํ (#107) * chore : RabbitMQ ํ๊ฒฝ ์ค์ * chore : CI ํ์ดํ๋ผ์ธ์์ RabbitMQ ์ปจํ ์ด๋๋ฅผ ๋์์ ์ฌ์ฉํ๋๋ก ์ค์ * new : RabbitMQ ์ค์ ํด๋์ค, dto ์์ฑ * feat : producer method ์์ฑ * feat : ๋ฉ์ธ์ง ํ ๊ตฌํ ์๋ฃ * feat : ๋ฐ์ดํฐ ์ ์ฅ ์์ฒญ ํ ์คํธ ์ผ์ด์ค ์์ * feat : ConsumerTest ์ฝ๋ ์ถ๊ฐ * fix : ์ ์ฅ ํ ์คํธ ์ผ์ด์ค ์ฑ๊ณต * fix : ํ ์คํธ ์ฝ๋ ์์ ์ค * fix : ํ ์คํธ ์ผ์ด์ค ์ฑ๊ณต * feat : dlq ๋์ * feat : ๋ฐ์ดํฐ ์์ ๋ณด์ฅ์ ์ํด version ์ถ๊ฐ * refactor : MQConfig ํ์ผ ์์น ๋ณ๊ฒฝ * chore : RabbitMQ ํ๊ฒฝ ์ค์ # Conflicts: # docker-compose.yml # src/main/resources/application.yml * chore : CI ํ์ดํ๋ผ์ธ์์ RabbitMQ ์ปจํ ์ด๋๋ฅผ ๋์์ ์ฌ์ฉํ๋๋ก ์ค์ * new : RabbitMQ ์ค์ ํด๋์ค, dto ์์ฑ * feat : producer method ์์ฑ * feat : ๋ฉ์ธ์ง ํ ๊ตฌํ ์๋ฃ * feat : ๋ฐ์ดํฐ ์ ์ฅ ์์ฒญ ํ ์คํธ ์ผ์ด์ค ์์ * feat : ConsumerTest ์ฝ๋ ์ถ๊ฐ * fix : ์ ์ฅ ํ ์คํธ ์ผ์ด์ค ์ฑ๊ณต * fix : ํ ์คํธ ์ฝ๋ ์์ ์ค * fix : ํ ์คํธ ์ผ์ด์ค ์ฑ๊ณต * feat : dlq ๋์ * feat : ๋ฐ์ดํฐ ์์ ๋ณด์ฅ์ ์ํด version ์ถ๊ฐ * refactor : MQConfig ํ์ผ ์์น ๋ณ๊ฒฝ * fix : ์ต์ ์ฌํญ ๋ฐ์ * fix : copilot review ๋ฐ์ * feat : Dashboard์์ graph ์ฐธ์กฐ ๋ฐฉ์ EAGER -> LAZY ๋ก ๋ณ๊ฒฝ * CI ์คํจํด์ ๋ค์ EAGER๋ก ๋ณ๊ฒฝ * fix : ๋ค์ LAZY๋ก ๋ณ๊ฒฝ --------- Co-authored-by: EpicFn <[email protected]> * [Refactor/OPS-373] ์๋ฃ ์กฐํ ๊ฒ์ ์๊ตฌ์ฌํญ ์์ (#108) * refactor/OPS-373 : ์๋ฃ ์ด๋ฆ unique ์์ฑ ์ญ์ * refactor/OPS-373 : ์๋ฃ ์์ ๊ฐ๋ฅ ์นผ๋ผ ์ถ๊ฐ * refactor/OPS-373 : ๋ช ์์ null๊ณผ ๋ฏธ์ ๋ฌ ๊ตฌ๋ถ * [Feat/OPS-376] ์คํ์ด์ค ๋ชฉ๋ก ์ฐธ์ฌ ์ธ์ ๋ฐํ api ๊ตฌ์ฑ (#109) * refactor : dto ์ด๋ฆ ์ผ๋ถ ๋ณ๊ฒฝ * feat : ๊ตฌํ ์๋ฃ * feat : ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * fix : ํ ์คํธ ์ผ์ด์ค ์์ --------- Co-authored-by: EpicFn <[email protected]> * [Refactor/OPS-290] ๋ฐ์ดํฐ์์ค ์ ์ ํ ๊ธฐ๋ฅ ๊ณ ๋ํ (#112) * refactor/OPS-290 : ๋ฐ์ดํฐ์์ค ์ ์ ํ ๊ธฐ๋ฅ ๊ณ ๋ํ * [Feat/OPS-346] ๊ณต์ ํด๋ ๊ด๋ฆฌ (#113) * refactor/OPS-360 : OpenAPI ์ ๋ํ ์ด์ ์ถ๊ฐ * refactor/OPS-360 : NoResultException ์์ธ ๋ถ๋ฆฌ * refactor/OPS-360 : param ์ถ๊ฐ * refactor/OPS-360 : param ์ถ๊ฐ * refactor/OPS-360 : default ํด๋ CRUD ๋ก์ง ์์ * refactor/OPS-360 : ํด๋ ๋ฆฌ์คํธ๋ ํธ์ถ ๋ก์ง ์์ * refactor/OPS-346 : ๊ณต์ ํด๋ ๊ด๋ฆฌ * feat/OPS-365 : soft delete + ํด์งํต ์กฐํ ๊ตฌํ * feat/OPS-346 : ๊ณต์ ํด๋ ๊ด๋ฆฌ * feat/OPS-346 : ๊ณต์ ํด๋ ๊ด๋ฆฌ * refactor/OPS-346 : ๊ฐ์ธ / ๊ณต์ ํณ๋ ๊ด๋ฆฌ ๋ถ๋ฆฌ * refactor/OPS-346 : ๊ฒ์ ๊ธฐ๋ฅ ์ถ์ฒ ๋๋ฝ ์์ * feat : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ์ ์์ฑ ์ผ์๋ ๋ฐํ (#114) Co-authored-by: EpicFn <[email protected]> * [feat/OPS-377] ์ด์/ํ ์คํธ ์๋ฒ ๋ถ๋ฆฌ ์์ (#115) * feat/OPS-377 : ํ ์คํธ/์ด์ ํ๊ฒฝ ๋ถ๋ฆฌ * feat/OPS-377 : ํ ์คํธ/์ด์ ํ๊ฒฝ ๋ถ๋ฆฌ #2 * feat/OPS-377 : ํ ์คํธ/์ด์ ํ๊ฒฝ ๋ถ๋ฆฌ #3 * feat/OPS-377 : ํ ์คํธ/์ด์ ํ๊ฒฝ ๋ถ๋ฆฌ #4 * [Fix/OPS-378] ๋์๋ณด๋ ํ์ entity ์์ (#117) * fix : node, edge dto ์์ * fix : ํ ์คํธ ์ผ์ด์ค ์์ * fix : ํ ์คํธ ์์ ์๋ฃ * fix : ์คํ ์์ * fix : ์คํ ์ถ๊ฐ ์์ ; --------- Co-authored-by: EpicFn <[email protected]> * [Feat/OPS-379] liveblocks ์ฐ๋ (#118) * new : Liveblock API ํธ์ถ์ ์ํ Client ๋น ์์ฑ * feat : ์คํ์ด์ค ์์ฑ/์ญ์ ์ liveblocks room ๋ ํจ๊ป ์์ฑ/์ญ์ * fix : test ์ mock ๋น ์ฌ์ฉ * feat : jwt ๋ฐ๊ธ ๋ก์ง ๊ตฌํ --------- Co-authored-by: EpicFn <[email protected]> * [Feat/OPS-246] ๊ณต์ ํ์ผ ๊ด๋ฆฌ (#119) * refactor/OPS-360 : OpenAPI ์ ๋ํ ์ด์ ์ถ๊ฐ * refactor/OPS-360 : NoResultException ์์ธ ๋ถ๋ฆฌ * refactor/OPS-360 : param ์ถ๊ฐ * refactor/OPS-360 : param ์ถ๊ฐ * refactor/OPS-360 : default ํด๋ CRUD ๋ก์ง ์์ * refactor/OPS-360 : ํด๋ ๋ฆฌ์คํธ๋ ํธ์ถ ๋ก์ง ์์ * refactor/OPS-346 : ๊ณต์ ํด๋ ๊ด๋ฆฌ * feat/OPS-365 : soft delete + ํด์งํต ์กฐํ ๊ตฌํ * feat/OPS-346 : ๊ณต์ ํด๋ ๊ด๋ฆฌ * feat/OPS-346 : ๊ณต์ ํด๋ ๊ด๋ฆฌ * feat/OPS-246 : ๊ณต์ ํ์ผ ๊ด๋ฆฌ * refactor/OPS-346 : ๊ฐ์ธ / ๊ณต์ ํณ๋ ๊ด๋ฆฌ ๋ถ๋ฆฌ * refactor/OPS-346 : ๊ฐ์ธ / ๊ณต์ ํ์ผ ๊ด๋ฆฌ ๋ถ๋ฆฌ * refactor/OPS-346 : ๊ฒ์ ๊ธฐ๋ฅ ์ถ์ฒ ๋๋ฝ ์์ * feat/OPS-246 : ๊ฐ์ธ / ๊ณต์ ํ์ผ ๊ด๋ฆฌ ๋ถ๋ฆฌ * feat/OPS-246 : api ์์ฒญ ์์ * feat/OPS-246 : api ์์ฒญ ์์ - request ์ด๋ฆ ํต์ผ * refactor/OPS-246 : ๋จธ์ง * refactor/OPS-246 : ๋จธ์ง * [Feat/OPS-388] ๋ค๊ฑด์ญ์ DELETE ๋ณธ๋ฌธ ์์ (#122) * refactor/OPS-388 : ๋ค๊ฑด์ญ์ DELETE ๋ณธ๋ฌธ ์์ * refactor/OPS-388 : ๋ค๊ฑด์ญ์ DELETE ํ ์คํธ ์ผ์ด์ค ์์ * Hotfix/์คํ์ด์ค์ด๋๋ชฉ๋ก ๋ฐํ ์ invite id ํฌํจ (#123) * fix : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์ inviteId ๋ฐํํ๋๋ก ๋ณ๊ฒฝ * fix : ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ --------- Co-authored-by: EpicFn <[email protected]> * [Feat/OPS-379] liveblocks ์ฐ๋ (#124) * new : Liveblock API ํธ์ถ์ ์ํ Client ๋น ์์ฑ * feat : ์คํ์ด์ค ์์ฑ/์ญ์ ์ liveblocks room ๋ ํจ๊ป ์์ฑ/์ญ์ * fix : test ์ mock ๋น ์ฌ์ฉ * feat : jwt ๋ฐ๊ธ ๋ก์ง ๊ตฌํ * fix : SpaceArchiveDataSourceControllerTest์์ liveblocks ๋น mock ์ฒ๋ฆฌ * fix : ์คํ ์์ --------- Co-authored-by: EpicFn <[email protected]> * refactor : secrets๊ฐ ์ปจํ ์ด๋ ์คํ์ ํ๊ฒฝ๋ณ์๋ก ์ฃผ์ ๋๋๋ก ์์ (#120) * refactor: ๋น๋ ์ secrets.yml ํ์ผ ์ญ์ * refactor : ํ ์คํธ ์๋ฒ ํ๊ฒฝ๋ณ์ ์ฃผ์ ์ค์ * refactor : ์ด์์๋ฒ ํ๊ฒฝ๋ณ์ ์ฃผ์ ์ค์ * refactor : ์ด์ํ๊ฒฝ๋ณ YML ๋ถ๋ฆฌ ๋ฐ ๋ฐฐํฌ ํ๊ฒฝ ์ค์ ๊ตฌ์กฐ ๊ฐ์ * refactor : ๋ก์ปฌ(dev,test).yml ๋ณต๊ตฌ * refactor : ๋น๋์ ํ ์คํธ secrets.yml V2๋ก ๋ณ๊ฒฝ * refactor: gradle ํ ์คํธ์ ํ๊ฒฝ๋ณ์๋ก ์ค์ ๊ฐ ์ฃผ์ * refactor: ymlํ์ผ ๋ค์ฌ์ฐ๊ธฐ ์์ * refactor: yml ํ๋ ์ด์คํ๋ ๋ค์ด๋ฐ ๊ท์น ์ผ๊ด์ฑ ์ ์งํ๋๋ก ์์ * [Feat/ops-379] feat liveblocks ์ฐ๋ (#127) * new : Liveblock API ํธ์ถ์ ์ํ Client ๋น ์์ฑ * feat : ์คํ์ด์ค ์์ฑ/์ญ์ ์ liveblocks room ๋ ํจ๊ป ์์ฑ/์ญ์ * fix : test ์ mock ๋น ์ฌ์ฉ * feat : jwt ๋ฐ๊ธ ๋ก์ง ๊ตฌํ * fix : SpaceArchiveDataSourceControllerTest์์ liveblocks ๋น mock ์ฒ๋ฆฌ * fix : ์คํ ์์ * new : Liveblock API ํธ์ถ์ ์ํ Client ๋น ์์ฑ # Conflicts: # src/main/java/org/tuna/zoopzoop/backend/global/clients/liveblocks/LiveblocksClient.java --------- Co-authored-by: EpicFn <[email protected]> * fix : ์คํ ์์ (#128) Co-authored-by: EpicFn <[email protected]> * [Hotfix] ํ์ดํ๋ผ์ธ ์คํ ์์ (#129) * fix : ์คํ ์์ * fix : bucket ์คํ ์์ * fix: S3 ๊ด๋ จ ๊ฐ ๋กค๋ฐฑ --------- Co-authored-by: EpicFn <[email protected]> * refactor: s3 prefix separation (#131) * refactor: S3 prefix ํ๊ฒฝ๋ณ์ ๋ถ๋ฆฌ ๋ฐ server ํ๋กํ์ผ ์ค์ ์ถ๊ฐ * fix: cd ์คํ ์์ * fix : docker run ์ฃผ์ ์์ฐ * refactor: s3 prefix separation (#132) * refactor: S3 prefix ํ๊ฒฝ๋ณ์ ๋ถ๋ฆฌ ๋ฐ server ํ๋กํ์ผ ์ค์ ์ถ๊ฐ * fix: cd ์คํ ์์ * fix : docker run ์ฃผ์ ์์ฐ * fix: bucket ์คํ ์์ * fix: ์คํ ์ ๊ฑฐ * [fix/OPS-390] Secret ๊ฐ ๊ด๋ จ ์ผ๋ถ ์์ (#126) * fix/OPS-390 : secret ํ ํ๋ฆฟ ๋ฐ ์์ ์ฌํญ์ ๋ง๊ฒ ์ฝ๋ ๋ณ์๋ช ๋ณ๊ฒฝ. * feat/OPS-390: NEWS API ์์ ์ถ๊ฐ ์ฌํญ ๋ฐ์. * feat/OPS-390: CI ์ํฌํ๋ก์ฐ ์ผ๋ถ ์์ . * feat/OPS-390: ์ผ๋ถ placeholders ์์ . * feat/OPS-390: ์ผ๋ถ ๋ฌธ์ํ ํญ๋ชฉ ์์ . * refactor: s3 prefix ๋ถ๋ฆฌ ๋ฐ ci/cd ์์ ํ (#134) * refactor: S3 prefix ํ๊ฒฝ๋ณ์ ๋ถ๋ฆฌ ๋ฐ server ํ๋กํ์ผ ์ค์ ์ถ๊ฐ * fix: bucket ์คํ ์์ * [Hotfix] ๋ก๊ทธ์ธ ์๋ฌ ์์ (#135) * Update README.md * Remove unnecessary blank line in ApiV1DashboardController * [Feat/OPS-389] ์คํ์ด์ค ์ด๋ ์๋ฆผ ๊ตฌํ (#136) * new : emitter ๊ด๋ฆฌ service, controller ์์ฑ * feat : ํํธ๋นํธ ๋ก์ง ๊ตฌํ * fix : ๋น๋๊ธฐ ์ฒ๋ฆฌ ํ๋๋ก ๋ณ๊ฒฝ * feat : ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * fix : ํ ์คํธ ์์ * fix : ๋ถํ์ํ ์ด๋ ธํ ์ด์ ์ญ์ --------- Co-authored-by: EpicFn <[email protected]> * [feat/OPS-392] ์ฌ์ฉ์ ๊ฒ์ ๊ธฐ๋ฅ ์ถ๊ฐ (#137) * feat/OPS-392: ๊ฒ์ ๊ธฐ๋ฅ ์ถ๊ฐ & ElasticSearch ๊ตฌํ & ์ผ๋ถ ๋๋ฉ์ธ ์ค๋ฅ ์์ . * feat/OPS-392: CI ์ํฌํ๋ก์ฐ์ ElasticSearch ์๋น์ค ์ปจํ ์ด๋ ์์ฑ ๋ก์ง ์ถ๊ฐ. * feat/OPS-392: CI ์ํฌํ๋ก์ฐ์ ElasticSearch ์๋น์ค ์ปจํ ์ด๋ ์์ฑ ๋ก์ง ์ถ๊ฐ #2 * feat/OPS-392: ์ถ๊ฐ ๋๋ฉ์ธ ์ค๋ฅ ์์ . * feat/OPS-392: Docker-compose์ elastic-search ์๋น์ค ํญ๋ชฉ ์ถ๊ฐ. * fix: ๋๋ฉ์ธ ์์ฒญ ์ฌํญ์ ๋ง๊ฒ ์์ . (#138) * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. (#139) * ๋ฐฐํฌ์ฉ ์ปค๋ฐ (#140) * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #2 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. (#142) * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #2 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #3 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #4 * [Feat/OPS-391] ์์นด์ด๋ธ ์๋ฃ img ์๋ฃ ํ์ ์์ (#141) * feat/OPS-391 : ์ด๋ฏธ์ง ์์ multi part ๊ตฌํ * feat/OPS-391 : ์ด๋ฏธ์ง ์์ multi part ๊ตฌํ * refactor/OPS-391 : enum ๋์๋ฌธ์ ๋ฌด์ * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. (#143) * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #2 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #3 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #4 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #5 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #6 * fix: ์ด์์๋ฒ rabbitmq ํ๊ฒฝ๋ณ์ ์ค์ (#144) * feat/OPS-393 : ํฐ์คํ ๋ฆฌ ํฌ๋กค๋ฌ ์์ฑ (#145) * fix/OPS-394: API ๋ฌธ์ํ ๋ฐ s3 ์ค๋ฅ ์์ #1 (#146) * [fix/OPS-394] ๋ฌธ์ํ ๋ฐ ์ค๋ฅ ์์ 3 (#148) * fix/OPS-394: API ๋ฌธ์ํ ๋ฐ s3 ์ค๋ฅ ์์ #3 * fix/OPS-394: API ๋ฌธ์ํ ๋ฐ s3 ์ค๋ฅ ์์ #4 * refactor/OPS-395: ๊ฒ์ ๋ก์ง ์์ . (#149) * fix: ๋ฒจ๋ก๊ทธ ํฌ๋กค๋ฌ ์์ฑ์ผ์ ํ์ฑ ์ด์ ํด๊ฒฐ (#111) * fix : ์์ฑ์ผ์ ํ์ฑ ์ด์ ํด๊ฒฐ * refactor: velog ํฌ๋กค๋ฌ ์ฐ์ ์์ ๋๊ฒ ์ค์ * fix: ๋ฒจ๋ก๊ทธ ํฌ๋กค๋ฌ ์์ธ ์ฒ๋ฆฌ ์ถ๊ฐ (HTML ์์ ์์ ์ ๋น ๋ฌธ์์ด, ์์ฑ์ผ ์์ ์ ๊ธฐ๋ณธ๊ฐ) * fix : docker ์คํ์ AWS ํ๊ฒฝ๋ณ์๊ฐ ์ ๊ฑฐ (#150) * fix: ์ค๋ฐ๊ฟ ๋ฌธ์ ๋ค ๊ณต๋ฐฑ ์ ๊ฑฐ ๋ฐ OPENAI API Key ์ด์ํ๊ฒฝ๊ฐ ๋ถ๋ฆฌ (#152) * refactor/OPS-396: n-gram analyzer ์ ์ฉ์ ํตํ ๊ฒ์ ๊ฒฐ๊ณผ ํฅ์ & OAuth2SuccessHandler ๋ก์ปฌ ํ๊ฒฝ ๋ถ๊ธฐ. (#154) * refactor/OPS-398: ์ธ์ฆ/์ธ๊ฐ ์ค๋ฅ ์์ (#155) * [Refactor/OPS-380] ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ๊ฐ์ (#156) * refactor : membership ์กฐํ ์ lazy loading์ ์ํ n+1 ๋ฌธ์ ๊ฐ์ * refactor : space์ member ๋ชฉ๋ก ์กฐํ ์ n+ 1 ๋ฌธ์ ํด๊ฒฐ --------- Co-authored-by: EpicFn <[email protected]> * Update README.md (#157) * Create DEV_GUIDE.md (#158) * Update README.md (#159) * fix/OPS-399: ๋ฆฌํ๋ ์ ํ ํฐ ์ด์ ์์ . (#160) * refactor/OPS-397 : ๊ฒ์ ์๊ตฌ์ฌํญ ๋ฐ์ (#161) * hotfix : ์คํ์ด์ค ์ด๋ฏธ์ง ์ ์ฅ ๋ก์ง ์์ (#163) * fix : ํ์ฅ์ ์ถ๊ฐํ๊ณ ๋ก๊ทธ ๋ฑ๋๋ก ๋ณ๊ฒฝ * fix : prefix ๋ก ๊ตฌ๋ถํ๋๋ก ๋ณ๊ฒฝ * fix : CI ๊ณผ์ ์ ๋๋ฏธ prefix ๊ฐ ์ถ๊ฐ * fix : ํ๊ฒฝ ํ์ผ์ prefix ์ถ๊ฐ * fix : ์คํ ์์ --------- Co-authored-by: EpicFn <[email protected]> * fix/OPS-399: ๋ฆฌํ๋ ์ ํ ํฐ ์ด์ ์์ #2 (#165) * fix : ์ด๋ฏธ์ง ๊ฒฝ๋ก ๋ฐ ๋ฐํ ํ์ ์์ (#166) Co-authored-by: EpicFn <[email protected]> * fix : Url ์์ (#167) Co-authored-by: EpicFn <[email protected]> * fix/OPS-400 : ์์ &์ญ์ ์๊ตฌ์ฌํญ ๋ฐ์ (#169) * fix: ์ด์์๋ฒ/ํ ์คํธ์๋ฒ vpc ๋ถ๋ฆฌ๋์ด ์์ด, rabbitmq host ๋ ๋ถ๋ฆฌ (#171) * fix : ๋ฉค๋ฒ ์ญ์ ์ ์ ๋ น ์คํ์ด์ค ์ญ์ ๋ก์ง ๊ตฌํ (#172) Co-authored-by: EpicFn <[email protected]> * Develop -> main ๋ณํฉ (#168) (#173) * [feat/OPS-262] GlobalExceptionHandler ์ค์ (#8) * feat: GlobalExceptionHandler ์งํ ์ฌํญ ์ ์ฅ. * feat/OPS-262 : GlobalExceptionHandler ์์ฑ ์๋ฃ. * [feat/OPS-126] Member ๋๋ฉ์ธ ๊ธฐ์ด ์ค๊ณ (#9) * feat/OPS-127 : Member ์ํฐํฐ ์์ฑ(ํ๋, ์ฐ๊ด ๊ด๊ณ, ์์ฑ์, ๋ฉ์๋) * feat/OPS-128 : MemberRepository ์์ฑ(name, email ๊ฒ์ ์ต์ ์ถ๊ฐ) * feat: GlobalExceptionHandler ์์ฑ์ ์ํ ์งํ ์ฌํญ ์ ์ฅ. * feat/OPS-129 : MemberService ์์ฑ(์กฐํ, ์์ฑ/์์ , ์ญ์ ) * feat/OPS-126 : Member ๋๋ฉ์ธ ์ค๊ณ ์๋ฃ. Service ํ ์คํธ ์ฝ๋ ์ถ๊ฐ * [Chore/OPS-264] ci ์ํฌํ๋ก์ฐ ๊ฐ์ (#10) * chore/OPS-264 : ci.yml ์์ * Update .github/workflows/ci.yml * Update .github/workflows/ci.yml --------- * Update .gitignore to exclude IntelliJ files (#11) Add .idea/ to .gitignore to exclude IntelliJ project files * feat/OPS-134 : ApiV1Controller ์์ฑ ์๋ฃ. (#12) * [chore/OPS-268] CI ์ํฌํ๋ก์ฐ ๊ฐ์ #2 (#15) ํ์ฌ ์์ ๋ก๊ทธ์ธ์ ์ฌ์ฉํ๋ ํน์ ๋ฏผ๊ฐํ ๊ฐ(JWT ํ ํฐ, ์์ client_id ๋ฑ)์ @value ์ด๋ ธํ ์ด์ ์ ํตํด ๋ฐ์์ค๊ณ ์์ต๋๋ค. ํ์ง๋ง ํด๋น ๋ฏผ๊ฐํ ๊ฐ์ ์ ์ฅํ yaml ํ์ผ์ ๋ ํฌ์งํ ๋ฆฌ์ ๋ฐ๋ก ์ฌ๋ฆด ์ ์๊ธฐ์, ๋ ํฌ์งํ ๋ฆฌ์ secrets์ ํด๋น ๊ฐ๋ค์ ์ ์ฅํด๋๊ณ , CI ์ํฌํ๋ก์ฐ์ ์ด ๊ฐ๋ค์ ์ฌ์ฉํด์ application-secrets.yml ํ์ผ์ ์์ฑํ๋ ๋ก์ง์ ์ถ๊ฐํ์ต๋๋ค. * [feat/OPS-155] ์์ ๋ก๊ทธ์ธ ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ(์นด์นด์ค) (#18) * feat/OPS-155 : ์์ ๋ก๊ทธ์ธ/ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ (์นด์นด์ค) ์๋ฃ. ์์ ์ฌํญ ๋ฐ์. * feat/OPS-155 : ์์ ๋ก๊ทธ์ธ/ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ (์นด์นด์ค) ์๋ฃ. ์์ ์ฌํญ ๋ฐ์ #2. * feat/OPS-155 : ์์ ๋ก๊ทธ์ธ/ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ (์นด์นด์ค) ์๋ฃ. ์์ ์ฌํญ ๋ฐ์ #3. * [chore/ops-130] Terraform์ ํ์ฉํด EC2 ์ธ์คํด์ค ์์ฑ ๋ฐ ์ค์ (#17) * chore/OPS-266 : EC2 ์ธ์คํด์ค ์์ฑ * chore/OPS-267 : VPC, IAM, SG ์ค์ * chore : ์๋ธ๋ท ์ค์ ์์ ๋ฐ nginx, mysql ๋ณผ๋ฅจ ๋ง์ดํธ ์ค์ ์ถ๊ฐ * chore : Dockerfile ์์ ๋ฐ EC2 ๋ณด์ ๊ทธ๋ฃน ์์ * chore : MYSQL ์ปจํ ์ด๋ ์คํ์ ์ด๊ธฐ DB ์ด๋ฆ ์ง์ ํ๋๋ก ์ค์ * fix/OPS-271 : SecurityConfig ๋ฐ Jwt ์ธ์ฆ ํํฐ ์์ (#19) * Feat/ops 209 be feat ํด๋ ์์ฑ (#21) * refactor: archive_id + name ๋ณตํฉ ์ ๋ํฌ ์ ์ฝ ์ถ๊ฐ * refactor: folder_id + title ๋ณตํฉ ์ ๋ํฌ ์ ์ฝ ์ถ๊ฐ * refactor: member_id, archive_id ๋จ์ผ ์ ๋ํฌ ์ ์ฝ ์ถ๊ฐ * refactor: ์ํฐํฐ ์ ์ฝ * feat/OPS-209-BE-feat-ํด๋-์์ฑ ์๋ฃ * feat/OPS-209-BE-feat-ํด๋-์์ฑ ์๋ฃ * fix : ์ปจ๋ฒค์ ํต์ผ (#22) * Feat/ops 210 be feat ํด๋ ์ญ์ (#23) * feat/OPS-210 : ํด๋ ์ญ์ ๊ตฌํ * [feat/OPS-151] llm ํ์ฉ ๋ฐ์ดํฐ ์ ์ ํ ๊ธฐ๋ฅ ๊ตฌํ (#27) - groq api๋ฅผ ์ด์ฉํ์ฌ ์์ฝ, ํ๊ทธ ์ถ์ถ ๊ธฐ๋ฅ ๊ตฌํ * [feat/OPS-158] ์์ ๋ก๊ทธ์ธ ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ(๊ตฌ๊ธ) (#28) * feat/OPS-158 : ์์ ๋ก๊ทธ์ธ(๊ตฌ๊ธ) ๊ตฌํ, JWT, Member, Auth ๋๋ฉ์ธ ๊ณ ๋ํ * feat/OPS-158 : ํ ์คํธ ์ผ์ด์ค ์์ . * fix/OPS-158 : template ์ถฉ๋ ํด๊ฒฐ. * fix/OPS-158 : @transactional import ์์ * feat/OPS-211 : ํด๋ ์ด๋ฆ ๋ณ๊ฒฝ ๊ตฌํ (#25) * feat/OPS-211 : ํด๋ ์ด๋ฆ ๋ณ๊ฒฝ ๊ตฌํ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * [chore/OPS-187] Terraform์ ํ์ฉํด RDS ์ธ์คํด์ค ์์ฑ ๋ฐ ์ค์ (#29) * chore/OPS-187 : Terraform์ ํ์ฉํด RDS ์ธ์คํด์ค ์์ฑ ๋ฐ ์ค์น * chore : RDS ์๋ธ๋ท ๊ทธ๋ฃน private์ผ๋ก ์์ * chore : AWS ๋ฆฌ์์ค ๋ค์ด๋ฐ ๊ท์น ์ ์ฉ * [feat] ์คํ์ด์ค ๋ฐ์ดํฐ ๊ด๋ฆฌ (#32) * new/OPS-222 : space controller, sevice, repository ๋น ์์ฑ # Conflicts: # src/main/java/org/tuna/zoopzoop/backend/global/initData/BaseInitData.java * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ์๋ํฌ์ธํธ ์ถ๊ฐ * new/OPS-222 : spaceControllerTest ํ์ผ ์ธํ * refactor/OPS-222 : ํ ์คํธ ํด๋์ค์ ๊ณต์ฉ ํํธ ์ถ์ ํด๋์ค๋ก ๋ถ๋ฆฌ * fix : ์ต์ ์ฌํญ ๋ฐ์ * fix/OPS-222 : ํ ์คํธ ์ฝ๋์์ ํ์ ๋ค๋ฅด๋ ๊ฑฐ ์์ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๊ตฌํ * feat/OPS-222 : space ๋จ์ ํธ๋ค๋ฌ, ์ปค์คํ ์๋ฌ ์์ฑ * fix/OPS-222 : controller ์์ฑ ํ ์คํธ ํต๊ณผ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๋ก์ง ์์ฑ * feat/OPS-222 : ์คํ์ด์ค ์ญ์ ๊ตฌํ * fix/OPS-222 : ํ ์คํธ ์ผ์ด์ค ํต๊ณผ * feat/OPS-245 : controller ๋จ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-245 : ์คํ์ด์ค ๋ช ๋ณ๊ฒฝ ๊ตฌํ * fix/OPS-244 : ์ด๋ฆ ๋ณ๊ฒฝ ์ saveAndFlush๋ก ์ฆ์ ๋ฐ์ * chore/OPS-222 : develop ์ต์ ์ฌํญ ๋ฐ์ * fix : ์ ์ฅ * fix/OPS-222 : globalExceptionHandler ์ปจ๋ฒค์ ํต์ผ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ controller ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-244 : membership ๊ด๋ฆฌ ๋น ์์ฑ * feat/OPS-244 : membership ์์ฑ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ฑ * fix : ํ ์คํธ ์ผ์ด์ค ๊ฐ ์ถฉ๋ ํด๊ฒฐ ์ค * fix : ์ต์ ์ฌํญ ๋ฐ์ * ์์์ ์ฅ * ์ด๊ธฐ ์ํ * fix : ๋ฏธ๋ด์ฑ ์ ์ฉ * feat/OPS-244 : ์คํ์ด์ค ๋ฉค๋ฒ ์ถ๊ฐ ๊ธฐ๋ฅ * fix : spaceControllerTest์ memberControllerTest ๊ฐ ์ถฉ๋ ํด๊ฒฐ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * chore/OPS-244 : ์ธ์ฆ ๊ด๋ จ ์ฝ๋ ์ฃผ์ ์ฒ๋ฆฌ * feat/OPS-270 : ์คํ์ด์ค ๋ก์ง์ ์ฌ์ฉ์ ์ ๋ณด ์ฒดํฌ ์ถ๊ฐ * feat/OPS-22 : ํ ์คํธ ์ผ์ด์ค์ WithUserDetails ๋ฐ์ * feat/OPS-222 : ์ธ์ฆ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * fix : ๋ถํ์ํ ์ฃผ์ ์ญ์ * new/OPS-222 : space controller, sevice, repository ๋น ์์ฑ # Conflicts: # src/main/java/org/tuna/zoopzoop/backend/global/initData/BaseInitData.java * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ์๋ํฌ์ธํธ ์ถ๊ฐ * new/OPS-222 : spaceControllerTest ํ์ผ ์ธํ * refactor/OPS-222 : ํ ์คํธ ํด๋์ค์ ๊ณต์ฉ ํํธ ์ถ์ ํด๋์ค๋ก ๋ถ๋ฆฌ * fix : ์ต์ ์ฌํญ ๋ฐ์ * fix/OPS-222 : ํ ์คํธ ์ฝ๋์์ ํ์ ๋ค๋ฅด๋ ๊ฑฐ ์์ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๊ตฌํ * feat/OPS-222 : space ๋จ์ ํธ๋ค๋ฌ, ์ปค์คํ ์๋ฌ ์์ฑ * fix/OPS-222 : controller ์์ฑ ํ ์คํธ ํต๊ณผ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๋ก์ง ์์ฑ * feat/OPS-222 : ์คํ์ด์ค ์ญ์ ๊ตฌํ * fix/OPS-222 : ํ ์คํธ ์ผ์ด์ค ํต๊ณผ * feat/OPS-245 : controller ๋จ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-245 : ์คํ์ด์ค ๋ช ๋ณ๊ฒฝ ๊ตฌํ * fix/OPS-244 : ์ด๋ฆ ๋ณ๊ฒฝ ์ saveAndFlush๋ก ์ฆ์ ๋ฐ์ * chore/OPS-222 : develop ์ต์ ์ฌํญ ๋ฐ์ * fix : ์ ์ฅ * fix/OPS-222 : globalExceptionHandler ์ปจ๋ฒค์ ํต์ผ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ controller ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-244 : membership ๊ด๋ฆฌ ๋น ์์ฑ * feat/OPS-244 : membership ์์ฑ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ฑ * fix : ํ ์คํธ ์ผ์ด์ค ๊ฐ ์ถฉ๋ ํด๊ฒฐ ์ค * fix : ์ต์ ์ฌํญ ๋ฐ์ * ์์์ ์ฅ * ์ด๊ธฐ ์ํ * fix : ๋ฏธ๋ด์ฑ ์ ์ฉ * feat/OPS-244 : ์คํ์ด์ค ๋ฉค๋ฒ ์ถ๊ฐ ๊ธฐ๋ฅ * fix : spaceControllerTest์ memberControllerTest ๊ฐ ์ถฉ๋ ํด๊ฒฐ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * chore/OPS-244 : ์ธ์ฆ ๊ด๋ จ ์ฝ๋ ์ฃผ์ ์ฒ๋ฆฌ * feat/OPS-270 : ์คํ์ด์ค ๋ก์ง์ ์ฌ์ฉ์ ์ ๋ณด ์ฒดํฌ ์ถ๊ฐ * feat/OPS-22 : ํ ์คํธ ์ผ์ด์ค์ WithUserDetails ๋ฐ์ * feat/OPS-222 : ์ธ์ฆ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * fix : ๋ถํ์ํ ์ฃผ์ ์ญ์ * fix : ๋ถํ์ํ ํ์ผ ์ญ์ --------- * Ops 272 be feat ์๋ฃ ์ด๋ฆ ์กฐํ (#31) * feat/OPS-211 : ํด๋ ์ด๋ฆ ๋ณ๊ฒฝ ๊ตฌํ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * feat/OPS-272 : ํด๋/ํ์ผ ์กฐํ ๊ตฌํ * refactor/OPS-272 : tag ์์ฑ์ ์ถ๊ฐ * feat/OPS-195 : ๋ด์ค ๋ชฉ๋ก ์กฐํ ๊ธฐ๋ฅ ๊ตฌํ(์ต์ ๋ด์ค, ํค์๋ ๊ธฐ๋ฐ). ์๋น์ค ํ ์คํธ ์ถ๊ฐ. (#33) * refactor/OPS-277 : default ํด๋ ์๋ ์์ฑ (#34) * [chore/OPS-278] Auth, Member, News ๋๋ฉ์ธ ๋ฌธ์ํ ๋ฐ ๊ณ ๋ํ. (#35) * chore/OPS-278 : Auth ๋๋ฉ์ธ ๋ฌธ์ํ ์๋ฃ & ApiV1MemberController ์ถ๊ฐ ๊ธฐ๋ฅ ๊ตฌํ. * refactor/OPS-278 : ApiV1MemberController ์ถ๊ฐ ์ฌํญ์ ๋ง๊ฒ ํ ์คํธ ์ถ๊ฐ ๊ตฌํ. * refactor/OPS-278 : Member ์์ฑ ์, ๋๋คํ UUID์ ์ 5๊ธ์๋ฅผ ํ๊ทธ๋ก ์ฌ์ฉํ๋๋ก ๋ณ๊ฒฝ. * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- * refactor/OPS-283 : datasource ์ํฐํฐ ์์ (#39) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * [feat/OPS-175] ์น ํฌ๋กค๋ง ๋ฐ์ดํฐ ์ ์ ํ ๊ธฐ๋ฅ ๊ตฌํ (#41) * feat/OPS-175 : ์น ํฌ๋กค๋ง ๋ฐ์ดํฐ ์ ์ ํ ๊ธฐ๋ฅ ๊ตฌํ * [refactor/OPS-287] News ๋๋ฉ์ธ ๊ณ ๋ํ (#42) * refactor/OPS-287 : newsSearch ๋ฉ์๋ ๋ก์ง ๋ณ๊ฒฝ ๋ฐ ์ผ๋ถ API ๋ฌธ์ํ. * refactor/OPS-287 : NewsServiceTest API๋ฅผ ํธ์ถํ๋ ๋ฐฉ์์ผ๋ก ๋ณ๊ฒฝ. * Ops 226 be feat ์๋ฃ ๋ฑ๋ก (#44) * refactor/OPS-283 : datasource ์ํฐํฐ ์์ * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * feat/OPS-226 : ์๋ฃ ๋ฑ๋ก ๊ตฌํ * refactor/OPS-226 : ๋ฉ์๋ ๋ช ์์ --------- * Ops 215 be feat ์๋ฃ ์ญ์ (#46) * refactor/OPS-283 : datasource ์ํฐํฐ ์์ * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * feat/OPS-226 : ์๋ฃ ๋ฑ๋ก ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ --------- * [feat/OPS-293] LiveBlocks๋ฅผ ์ํ React-flow ๋ฐ์ดํฐ ๊ด๋ฆฌ ๋๋ฉ์ธ ์ค๊ณ ์๋ฃ. ํ ์คํธ ์ถ๊ฐ. (#47) * feat/OPS-293 : LiveBlocks๋ฅผ ์ํ React-flow ๋ฐ์ดํฐ ๊ด๋ฆฌ ๋๋ฉ์ธ ์ค๊ณ ์๋ฃ. ํ ์คํธ ์ถ๊ฐ. * feat/OPS-293 : folder ํ ์คํธ์ @transactional ์ถ๊ฐ. * feat/OPS-293 : MemberServiceTest ์์ #1 * feat/OPS-293 : MemberServiceTest ์์ #2 * feat/OPS-293 : Folder ํ ์คํธ์ ActiveProfile(test) ์ถ๊ฐ. * feat/OPS-293 : ํ ์คํธ์ ๋ฌด๊ฒฐ์ฑ ๊ฒ์ฆ์ ์ํ @afterall, @AfterEach ์ถ๊ฐ. * feat/OPS-293 : ์ผ๋ถ ์์ . * feat/OPS-293 : ์ง์ง ๋ง์ง๋ง ์์ . * [chore/ops-132] CI/CD ํ์ดํ๋ผ์ธ ๊ตฌ์ถ (#43) * chore/OPS-133 : CI ํ์ดํ๋ผ์ธ ๊ตฌ์ถ * chore: ํ ์คํธ/์ด์ ํ๊ฒฝ์ฉ GitHub Actions Terraform ์๋ ์ธํ๋ผ ์ ์ฉ ์ํฌํ๋ก์ฐ ์ถ๊ฐ * chore : ํ๊ฒฝ๋ณ์๋ก test/prod ์๋ฒ ๋ถ๋ฆฌ ๊ฐ๋ฅํ๋๋ก ์ค์ * chore/OPS-135 : CD ์ํฌํ๋ก์ฐ ์ถ๊ฐ * chore: CI ํ CD ์คํ๋๋๋ก ์ค์ * chore : CI ์ํฌํ๋ก์ฐ job ๋ถ๋ฆฌ(ํ ์คํธ,๋น๋/๋์ปค ๋น๋,ghcr push) * chore : docker build jobs์์ checkout ๋จ๊ณ ์ถ๊ฐ * chore: CI ์ํฌํ๋ก์ฐ job ๊ตฌ๋ถ ์์ฐ * chore : develop/main ๋ธ๋์น์ ๋ฐ๋ผ CI/CD ์ํฌํ๋ก์ฐ ๋ถ๋ฆฌ * chore : Spring Boot Acutator ์์กด์ฑ ์ถ๊ฐ * chore: Actions์์ SSH ์ ์ ํ docker ์คํ ๊ถํ ๊ฐ๋๋ก ์ค์ * chore: ์ปจํ ์ด๋ ์คํ ๋ก๊ทธ ํฐ๋ฏธ๋์ ์ถ๋ ฅ ์ค์ * chore : ํฌ์ค์ฒดํฌ ์ค์ * chore: secrets ์ง์ ssh ํ๊ฒฝ ๋ณ์๋ก ์ ๋ฌ * chore: ํ๊ฒฝ๋ณ์ ์ง์ docker run์ ๋ฃ๊ธฐ * chore: spdocker run ์์ ring profile ์ ๊ฑฐ * chore: nginx ์ค์ * chore: test-cd ์์ * chore: test-cd ์์ 2 * chore: ghcr ๋ก๊ทธ์ธ ํ ํฐ ์์ * chore: ๋์ปค ์ด๋ฏธ์ง pull ์ด๋ฆ ์์ * chore: ssh ๋ด ์์ ํ ghcr ๋ก๊ทธ์ธ * chore : ์ด๋ฏธ pullํ ์ด๋ฏธ์ง์ run ์ด๋ฏธ์ง ์ด๋ฆ ์ผ์น์ํค๊ธฐ * chore: mysql driver ์์กด์ฑ ์ถ๊ฐ * chore : ํฌ์ค์ฒดํฌ ์์ฒญ ์คํ๋ง ์ํ๋ฆฌํฐ ํํฐ์ ๊ฑธ๋ฆฌ์ง ์๋๋ก ์ค์ * chore: nginx ํฌํธ ์ค์์นญ ์ค์ * chore: nginx ํฌํธ ์ค์์นญ ์ค์ ์์ * chore: nginx ํฌํธ ์ค์์นญ ์ค์ ์์ 2 * chore: ์ด์์๋ฒ CD ์ํฌํ๋ก์ฐ ์์ * chore : prod-server ์ํฌํ๋ก์ฐ ํ์ฑํ ๊ฒฝ๋ก ์ค์ * chore : test commit ๋์ค์ ์ง์ฐ๊ธฐ * [Feat/OPS-214] ์คํ์ด์ค ๋ฉค๋ฒ ๊ด๋ฆฌ (#50) * feat/OPS-227 : ์คํ์ด์ค ๋ฉค๋ฒ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-227 : ์คํ์ด์ค ๋ชฉ๋ก ๋ฐํ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-251 : ๊ถํ ๋ณ๊ฒฝ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-214 : ๊ถํ ๋ณ๊ฒฝ ์๋ํฌ์ธํธ ๊ตฌํ * fix/OPS-214 : ๋จ์ ๋ฉ์ธ์ง ์ค๋ฅ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-214 : ๋ก์ง ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-251 : globalExceptionHandler์ ์ญ์ง๋ ฌํ ์คํจ ์๋ฌ ์ถ๊ฐ * refactor/OPS-214 : ๋น์ฆ๋์ค ๋ก์ง์ ์๋น์ค ๊ณ์ธต์ ์ผ์ * feat/OPS-231 : ์คํ์ด์ค ์ด๋ ์ปจํธ๋กค๋ฌ ํ ์คํธ์ผ์ด์ค ์์ฑ * feat/OPS-231 : ์คํ์ด์ค ์ด๋ ๋ก์ง ์์ฑ * feat/OPS-231 : ์คํ์ด์ค์ด๋ ์๋น์ค ๋น ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * feat/OPS-228 : ํ์ ํด์ถ ์ปจํธ๋กค๋ฌ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feeat/OPS-229 : ํ์ ํด์ถ ๊ตฌํ ์๋ฃ * fix : ๊ธฐ์กด ํ ์คํธ ์ผ์ด์ค ์ผ๊ด์ฑ ์๊ฒ ์์ * feat : ๋ฉค๋ฒ ํด์ถ ์๋น์ค ํ ์คํธ ์ฝ๋ ์์ฑ * refactor : DTO ํจํค์ง ๋ณ๊ฒฝ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ์ปจํธ๋กค๋ฌ ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ๋ก์ง ์์ฑ * refactor : space ๋๋ฉ์ธ dto ํจํค์ง ๋ณ๊ฒฝ * feat/OPS-227 : ์คํ์ด์ค ๋ฉค๋ฒ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-227 : ์คํ์ด์ค ๋ชฉ๋ก ๋ฐํ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-251 : ๊ถํ ๋ณ๊ฒฝ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-214 : ๊ถํ ๋ณ๊ฒฝ ์๋ํฌ์ธํธ ๊ตฌํ * fix/OPS-214 : ๋จ์ ๋ฉ์ธ์ง ์ค๋ฅ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-214 : ๋ก์ง ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-251 : globalExceptionHandler์ ์ญ์ง๋ ฌํ ์คํจ ์๋ฌ ์ถ๊ฐ * refactor/OPS-214 : ๋น์ฆ๋์ค ๋ก์ง์ ์๋น์ค ๊ณ์ธต์ ์ผ์ * feat/OPS-231 : ์คํ์ด์ค ์ด๋ ์ปจํธ๋กค๋ฌ ํ ์คํธ์ผ์ด์ค ์์ฑ * feat : ์ต์ ์ฌํญ ๋ฐ์ * feat/OPS-231 : ์คํ์ด์ค์ด๋ ์๋น์ค ๋น ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * feat/OPS-228 : ํ์ ํด์ถ ์ปจํธ๋กค๋ฌ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feeat/OPS-229 : ํ์ ํด์ถ ๊ตฌํ ์๋ฃ * fix : ๊ธฐ์กด ํ ์คํธ ์ผ์ด์ค ์ผ๊ด์ฑ ์๊ฒ ์์ * feat : ๋ฉค๋ฒ ํด์ถ ์๋น์ค ํ ์คํธ ์ฝ๋ ์์ฑ * refactor : DTO ํจํค์ง ๋ณ๊ฒฝ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ์ปจํธ๋กค๋ฌ ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ๋ก์ง ์์ฑ * refactor : space ๋๋ฉ์ธ dto ํจํค์ง ๋ณ๊ฒฝ --------- * refactor/OPS-308 : ๋๋ฉ์ธ ๋ถ๋ฆฌ & CI ์ํฌํ๋ก์ฐ์ application-secrets-server.yml ์ถ๊ฐ. (#52) * Ops 255 be feat ์๋ฃ ์์ (#54) * refactor/OPS-283 : datasource ์ํฐํฐ ์์ * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * feat/OPS-226 : ์๋ฃ ๋ฑ๋ก ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-255 : ์๋ฃ ์ด๋ ๋ฐ ์์ ๊ตฌํ --------- * feat/OPS-289 : dataprocessor ์๋น์ค ์์ฑ (#59) * fix/OPS-318 : proxy host ์ค์์นญรฌ๏ฟฝ ssl ์ธ์ฆ์ ์ ์ง (#60) * [refactor/OPS-310] redirect url ๋ณ๊ฒฝ (#53) * refactor/OPS-310 : redirect-url ๋ณ๊ฒฝ. * refactor/OPS-310 : ์์ ์์ . * refactor/OPS-310 : ๋ ํ๋์ ์์ ์์ . * refactor/OPS-310 : ํฐ ์์ . * refactor/OPS-310 : ํ ์คํธ * refactor/OPS-310 : ์์ฒญ ์ฌํญ ๋ฐ์. * refactor/OPS-310 : ์์ฒญ ์ฌํญ ๋ฐ์ #2 * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ (#64) * [refactor/OPS-323] News API ์กฐํ ๋ก์ง ์์ . (#65) * ๋ฐฐํฌ ํ ์คํธ #2 * ๋ก์ง ์์ ํ ์คํธ * ๋ก์ง ์์ ํ ์คํธ #2 * refactor/OPS-322 : source ์นผ๋ผ๋ช ์์ (#68) * refactor/OPS-322 : source ์นผ๋ผ๋ช ์์ * refactor/OPS-322 : source ์นผ๋ผ๋ช ์์ * feat/OPS-321 : dataProcessorService์์ ์์ฝ ๋ก์ง ์์ฑ (#69) * [fix/OPS-317] CI/CD ํ์ดํ๋ผ์ธ ์ด๋ฒคํธ ๋ถ๋ฆฌ (#66) * fix : prod-server nginx ์ ๋ณด ์ถ๋ ฅ ์ ๊ฑฐ * fix : prod-server CD ์ํฌํ๋ก์ฐ main์ push๋ ๋ ์คํ๋๋๋ก ์์ * fix : test-server CI๋ pr์ develop์ ์คํ, CD๋ push๋ ๋ ์คํ * fix : test-server CI ์ํฌํ๋ก์ฐ์์ CD ๋ถ๋ถ ์ ๊ฑฐ * chore : ๋น๋์ aws๊ด๋ จ ์ ๋ณด application-secret.yml์ ๋ค์ด๊ฐ๋๋ก ์ค์ (#73) * chore : S3 ์ฌ์ฉ์ ์ํด ๋น๋์ AWS ์ ๋ณด application-secrets.yml์ ์ถ๊ฐ๋๋๋ก ์ค์ * chore : ์ญํ ์ S3 ์ ๊ทผ ์ ์ฑ ๋ถ์ฐฉ ํ๋๋ก ์ค์ * chore : รฃyml์ ์ถ๊ฐ์ ๋ณด ๋ฃ๋๋ก ์ค์ * [Feat/OPS-275] ์คํ์ด์ค ์ธ๋ค์ผ ์ด๋ฏธ์ง ์ ์ฅ (#71) * chore : S3 ํ๊ฒฝ ์ค์ * feat : S3Service ๊ตฌ์ฑ * chore : multipart ๋ฐ์ดํฐ ํฌ๊ธฐ ์ค์ * feat : S3 ์ ๋ก๋ ํ ์คํธ์ฉ ์๋ํฌ์ธํธ ์์ฑ * feat : S3 ์ฐ๋ ์๋ฃ * feat : space entity์ imageUrl ํญ๋ชฉ ์ถ๊ฐ * feat : ์ธ๋ค์ผ ์บก์ฒ ํ ์คํธ์ฉ * feat : ์ธ๋ค์ผ ์ดฌ์ ํ ์คํธ ์๋ํฌ์ธํธ ์์ฑ * feat : ์คํ์ด์ค ์ธ๋ค์ผ ๊ฐฑ์ API ์์ฑ * feat : ์คํ์ด์ค ์ด๋ฏธ์ง ๊ฐฑ์ ๊ธฐ๋ฅ ์์ฑ * feat : ์คํ์ด์ค ๋ชฉ๋ก ๋ฐํ ์ ์ธ๋ค์ผ url ๊ฐ์ด ๋ฐํ * feat : ์คํ์ด์ค ๋จ๊ฑด ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat : ์คํ์ด์ค ๋จ๊ฑด ์กฐํ ๊ตฌํ * feat : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ํ์ด์ง ๊ธฐ๋ฅ ์ถ๊ฐ --------- * [feat/OPS-324] ํฌ๋กฌ ํ์ฅ ํ๋ก๊ทธ๋จ ์์ ๋ก๊ทธ์ธ ๋ถ๊ธฐ & ์์ ๋ก๊ทธ์ธ ํ ์คํธ API ์ถ๊ฐ. (#70) * feat/OPS-324 : ํ์ฅ ํ๋ก๊ทธ๋จ ๋ถ๊ธฐ ๋ฐ ์์ ๋ก๊ทธ์ธ ํ ์คํธ API ์ถ๊ฐ. * feat/OPS-324 : ํ ์คํธ ๋ก์ง ์ผ๋ถ ์์ . * feat/OPS-324 : ํ ์คํธ ๋ก์ง ์ผ๋ถ ์์ . #2 * feat/OPS-324 : ํ ์คํธ ์๋ฃ, ํ ์คํธ ์ฝ๋ ์ ๊ฑฐ. * feat/OPS-324 : ๋ก๊ทธ์ธ ๋ถ๊ธฐ ์์ . * feat/OPS-324 : state ์ ๋ณด๋ฅผ ์ ์ฅํ๋ resolver ์ถ๊ฐ. * feat/OPS-324 : session ๋ฑ๋ก์ ์ํ OAuth2LoginSourceFilter ํด๋์ค ์ถ๊ฐ. * feat/OPS-324 : ํด๊ฒฐ * fix : ci ์ secrets ์์ S3 ๊ด๋ จ ์ํฌ๋ฆฟ ๊ฐ ์ญ์ ํ๋๋ก ๋ณ๊ฒฝ(๋ฒํท๋ช ์ ์ธ) (#74) * fix : ci ์ secrets ์์ S3 ๊ด๋ จ ์ํฌ๋ฆฟ ๊ฐ ์ญ์ ํ๋๋ก ๋ณ๊ฒฝ(๋ฒํท๋ช ์ ์ธ) * fix : CI ์คํ ์์ * fix : build ๋จ๊ณ์์ testest๋ฅผ ์ํํ์ง ์๋๋ก ๋ณ๊ฒฝ --------- * [feat/OPS-198] ์์นด์ด๋ธ ์ ๋ณด๋ก ๋ด์ค ๋ชฉ๋ก ์กฐํ (#75) * feat/OPS-198 : ์์นด์ด๋ธ ๊ธฐ๋ฐ ๋ด์ค ์กฐํ ๊ตฌํ. * feat/OPS-198 : ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ. * feat/OPS-265 : LLM-ํ์ฉ-๋ฐ์ดํฐ-์ ์ ํ-์-๊ธฐ์กด-์์นด์ด๋ธ์-ํ๊ทธ-์ฐ๋ (#77) * refactor/OPS-319: ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ (#76) * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * fix : SpringDoc๊ณผ Spring AI ๊ฐ ์์กด์ฑ ์ถฉ๋ ํด๊ฒฐ (#79) * [Feat/OPS-327] ์๋ฃ ๋ฑ๋ก llm ์ฐ๋ (#78) * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-327 : ์๋ฃ ๋ฑ๋ก LLM ์ฐ๋ * [feat/OPS-328] ์ธ์ฆ/์ธ๊ฐ ๋ก์ง ๋ณ๊ฒฝ (#80) * feat/OPS-328 : RefreshToken์ ์๋ฒ์์ ์ ์ฅํ๋๋ก ๋ณ๊ฒฝ. API ์ผ๋ถ ์์ . * feat/OPS-328 : ํ์ฅ ํ๋ก๊ทธ๋จ ๋ก๊ทธ์ธ ๋ฉ์๋ ์ถ๊ฐ ๋ฐ ๋ฐ์ดํฐ ์บ์ฑ ๋ฉ์๋ ์ถ๊ฐ. * [refactor/OPS-337] ์๊ตฌ์ฌํญ ๋ฐ์ ๋ฐ ์ผ๋ถ ๋ก์ง ์์ . (#81) * refactor/OPS-337 : ํ๋ก ํธ ์๊ตฌ์ฌํญ ๋ฐ์ ๋ฐ ์๋ฌ ์์ . * refactor/OPS-337 : ํ ์คํธ ์ผ์ด์ค ์์ . * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ (#82) * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : mock ์ถ๊ฐ๋ก ์ธํ testcase ์์ * [feat/OPS-338] ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ (#83) * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : mock ์ถ๊ฐ๋ก ์ธํ testcase ์์ * refactor/OPS-338 : Dev ํ ํฐ ๋ฐ๊ธ ์ปจํธ๋กค๋ฌ ์ถ๊ฐ * [Feat/OPS-326] ๋์๋ณด๋ ๋ฐ์ดํฐ ์ ์ฅ ์ฒด๊ณ ๊ตฌ์ถ (#85) * refactor : graph ๋๋ฉ์ธ์ dashboard ๋๋ฉ์ธ์ผ๋ก ์์ , dashboard ์ํฐํฐ ์์ฑ * feat : ์คํ์ด์ค ๋จ๊ฑด ์กฐํ ์ ๋์๋ณด๋ id๋ ํจ๊ป ๋ฐํ * refactor : API ๋ช ๋ณ๊ฒฝ * dashboard ๊ธฐ๋ฐ์ผ๋ก ์ ์ฅ/์กฐํ ๋๋๋ก ๋ณ๊ฒฝ * refactor : ํ ์คํธ ์ฝ๋ ์์ * fix : ๋ฐํ ๋ฉ์ธ์ง ์์ * feat : ์๋ช ๊ฒ์ฆ ๋ก์ง ๊ตฌํ * refactor : signature ์๋น์ค ๋ถ๋ฆฌ * fix : ์คํ ์์ * fix : CI ํ์ดํ๋ผ์ธ ์์ --------- * [feat/OPS-329] Sentry๋ฅผ ํตํ ๋ชจ๋ํฐ๋ง ํ๊ฒฝ ๊ตฌ์ถ. (#86) * feat/OPS-329 : Sentry๋ฅผ ํตํ ๋ชจ๋ํฐ๋ง ํ๊ฒฝ ๊ตฌ์ถ. * feat/OPS-329: ์ถ๊ฐ๋ก ํ๋ก ํธ ์๊ตฌ ์ฌํญ ๋ฐ์. * refactor/OPS-353 : ๋ถ๋ฆฌ ์๋ฃ. (#87) * [refactor/OPS-354] ํ ์คํธ ์ผ์ด์ค ์ฌ์ฉ ํ๋กํ ๋ณ๊ฒฝ. (#88) * refactor/OPS-354 : ํ ์คํธ ์ผ์ด์ค ์ฌ์ฉ ํ๋กํ ๋ณ๊ฒฝ. * refactor/OPS-354 : ์ด๋๋ ์๋ผ? * refactor/OPS-355 : ์๊ตฌ ์ฌํญ ๋ฐ์. (#91) * feat/OPS-358: Redis ์์กด์ฑ ์ถ๊ฐ ๋ฐ RedisConfig ์ค์ ์๋ฃ. AuthResultData ์ง๋ ฌํ ๋ฐ AuthResult ํด๋์ค์ TTL ๋์ . (#92) * feat/OPS-356 : ๋ค์ด๋ฒ ๋ธ๋ก๊ทธ ํฌ๋กค๋ฌ ์์ฑ (#93) * [feat/OPS-252] ์กฐ๊ฑด๋ณ ์๋ฃ ๊ฒ์ (#89) * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-327 : ์๋ฃ ๋ฑ๋ก LLM ์ฐ๋ * refactor/OPS-252 : ์กฐ๊ฑด๋ณ ์๋ฃ ๊ฒ์ ๊ตฌํ * refactor/OPS-252 : ์กฐ๊ฑด๋ณ ์๋ฃ ๊ฒ์ * fix : ์คํ์ด์ค, ์ฌ์ฉ์ ๋ชฉ๋ก ๋ฐํ ์ ํญ์ id ์ค๋ฆ์ฐจ์ ์ ๋ ฌ (#94) * IllegalStateException(๋์์ฑ ๋ฌธ์ )๊ด๋ จ ์ฒ๋ฆฌ ๋ฉ์๋ ์ถ๊ฐ. (#95) * [fix/OPS-362] ์๊ตฌ ์ฌํญ ๋ฐ์ (#96) * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์. * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#2 * [feat/OPS-341] ๋ฒจ๋ก๊ทธ ํฌ๋กค๋ฌโฆ
Kimgooner
added a commit
that referenced
this pull request
Oct 14, 2025
* [feat/OPS-262] GlobalExceptionHandler ์ค์ (#8) * feat: GlobalExceptionHandler ์งํ ์ฌํญ ์ ์ฅ. * feat/OPS-262 : GlobalExceptionHandler ์์ฑ ์๋ฃ. * [feat/OPS-126] Member ๋๋ฉ์ธ ๊ธฐ์ด ์ค๊ณ (#9) * feat/OPS-127 : Member ์ํฐํฐ ์์ฑ(ํ๋, ์ฐ๊ด ๊ด๊ณ, ์์ฑ์, ๋ฉ์๋) * feat/OPS-128 : MemberRepository ์์ฑ(name, email ๊ฒ์ ์ต์ ์ถ๊ฐ) * feat: GlobalExceptionHandler ์์ฑ์ ์ํ ์งํ ์ฌํญ ์ ์ฅ. * feat/OPS-129 : MemberService ์์ฑ(์กฐํ, ์์ฑ/์์ , ์ญ์ ) * feat/OPS-126 : Member ๋๋ฉ์ธ ์ค๊ณ ์๋ฃ. Service ํ ์คํธ ์ฝ๋ ์ถ๊ฐ * [Chore/OPS-264] ci ์ํฌํ๋ก์ฐ ๊ฐ์ (#10) * chore/OPS-264 : ci.yml ์์ * Update .github/workflows/ci.yml Co-authored-by: Copilot <[email protected]> * Update .github/workflows/ci.yml Co-authored-by: Copilot <[email protected]> --------- Co-authored-by: Copilot <[email protected]> * Update .gitignore to exclude IntelliJ files (#11) Add .idea/ to .gitignore to exclude IntelliJ project files * feat/OPS-134 : ApiV1Controller ์์ฑ ์๋ฃ. (#12) * [chore/OPS-268] CI ์ํฌํ๋ก์ฐ ๊ฐ์ #2 (#15) ํ์ฌ ์์ ๋ก๊ทธ์ธ์ ์ฌ์ฉํ๋ ํน์ ๋ฏผ๊ฐํ ๊ฐ(JWT ํ ํฐ, ์์ client_id ๋ฑ)์ @value ์ด๋ ธํ ์ด์ ์ ํตํด ๋ฐ์์ค๊ณ ์์ต๋๋ค. ํ์ง๋ง ํด๋น ๋ฏผ๊ฐํ ๊ฐ์ ์ ์ฅํ yaml ํ์ผ์ ๋ ํฌ์งํ ๋ฆฌ์ ๋ฐ๋ก ์ฌ๋ฆด ์ ์๊ธฐ์, ๋ ํฌ์งํ ๋ฆฌ์ secrets์ ํด๋น ๊ฐ๋ค์ ์ ์ฅํด๋๊ณ , CI ์ํฌํ๋ก์ฐ์ ์ด ๊ฐ๋ค์ ์ฌ์ฉํด์ application-secrets.yml ํ์ผ์ ์์ฑํ๋ ๋ก์ง์ ์ถ๊ฐํ์ต๋๋ค. * [feat/OPS-155] ์์ ๋ก๊ทธ์ธ ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ(์นด์นด์ค) (#18) * feat/OPS-155 : ์์ ๋ก๊ทธ์ธ/ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ (์นด์นด์ค) ์๋ฃ. ์์ ์ฌํญ ๋ฐ์. * feat/OPS-155 : ์์ ๋ก๊ทธ์ธ/ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ (์นด์นด์ค) ์๋ฃ. ์์ ์ฌํญ ๋ฐ์ #2. * feat/OPS-155 : ์์ ๋ก๊ทธ์ธ/ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ (์นด์นด์ค) ์๋ฃ. ์์ ์ฌํญ ๋ฐ์ #3. * [chore/ops-130] Terraform์ ํ์ฉํด EC2 ์ธ์คํด์ค ์์ฑ ๋ฐ ์ค์ (#17) * chore/OPS-266 : EC2 ์ธ์คํด์ค ์์ฑ * chore/OPS-267 : VPC, IAM, SG ์ค์ * chore : ์๋ธ๋ท ์ค์ ์์ ๋ฐ nginx, mysql ๋ณผ๋ฅจ ๋ง์ดํธ ์ค์ ์ถ๊ฐ * chore : Dockerfile ์์ ๋ฐ EC2 ๋ณด์ ๊ทธ๋ฃน ์์ * chore : MYSQL ์ปจํ ์ด๋ ์คํ์ ์ด๊ธฐ DB ์ด๋ฆ ์ง์ ํ๋๋ก ์ค์ * fix/OPS-271 : SecurityConfig ๋ฐ Jwt ์ธ์ฆ ํํฐ ์์ (#19) * Feat/ops 209 be feat ํด๋ ์์ฑ (#21) * refactor: archive_id + name ๋ณตํฉ ์ ๋ํฌ ์ ์ฝ ์ถ๊ฐ * refactor: folder_id + title ๋ณตํฉ ์ ๋ํฌ ์ ์ฝ ์ถ๊ฐ * refactor: member_id, archive_id ๋จ์ผ ์ ๋ํฌ ์ ์ฝ ์ถ๊ฐ * refactor: ์ํฐํฐ ์ ์ฝ * feat/OPS-209-BE-feat-ํด๋-์์ฑ ์๋ฃ * feat/OPS-209-BE-feat-ํด๋-์์ฑ ์๋ฃ * fix : ์ปจ๋ฒค์ ํต์ผ (#22) Co-authored-by: EpicFn <[email protected]> * Feat/ops 210 be feat ํด๋ ์ญ์ (#23) * feat/OPS-210 : ํด๋ ์ญ์ ๊ตฌํ * [feat/OPS-151] llm ํ์ฉ ๋ฐ์ดํฐ ์ ์ ํ ๊ธฐ๋ฅ ๊ตฌํ (#27) - groq api๋ฅผ ์ด์ฉํ์ฌ ์์ฝ, ํ๊ทธ ์ถ์ถ ๊ธฐ๋ฅ ๊ตฌํ * [feat/OPS-158] ์์ ๋ก๊ทธ์ธ ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ(๊ตฌ๊ธ) (#28) * feat/OPS-158 : ์์ ๋ก๊ทธ์ธ(๊ตฌ๊ธ) ๊ตฌํ, JWT, Member, Auth ๋๋ฉ์ธ ๊ณ ๋ํ * feat/OPS-158 : ํ ์คํธ ์ผ์ด์ค ์์ . * fix/OPS-158 : template ์ถฉ๋ ํด๊ฒฐ. * fix/OPS-158 : @transactional import ์์ * feat/OPS-211 : ํด๋ ์ด๋ฆ ๋ณ๊ฒฝ ๊ตฌํ (#25) * feat/OPS-211 : ํด๋ ์ด๋ฆ ๋ณ๊ฒฝ ๊ตฌํ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * [chore/OPS-187] Terraform์ ํ์ฉํด RDS ์ธ์คํด์ค ์์ฑ ๋ฐ ์ค์ (#29) * chore/OPS-187 : Terraform์ ํ์ฉํด RDS ์ธ์คํด์ค ์์ฑ ๋ฐ ์ค์น * chore : RDS ์๋ธ๋ท ๊ทธ๋ฃน private์ผ๋ก ์์ * chore : AWS ๋ฆฌ์์ค ๋ค์ด๋ฐ ๊ท์น ์ ์ฉ * [feat] ์คํ์ด์ค ๋ฐ์ดํฐ ๊ด๋ฆฌ (#32) * new/OPS-222 : space controller, sevice, repository ๋น ์์ฑ # Conflicts: # src/main/java/org/tuna/zoopzoop/backend/global/initData/BaseInitData.java * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ์๋ํฌ์ธํธ ์ถ๊ฐ * new/OPS-222 : spaceControllerTest ํ์ผ ์ธํ * refactor/OPS-222 : ํ ์คํธ ํด๋์ค์ ๊ณต์ฉ ํํธ ์ถ์ ํด๋์ค๋ก ๋ถ๋ฆฌ * fix : ์ต์ ์ฌํญ ๋ฐ์ * fix/OPS-222 : ํ ์คํธ ์ฝ๋์์ ํ์ ๋ค๋ฅด๋ ๊ฑฐ ์์ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๊ตฌํ * feat/OPS-222 : space ๋จ์ ํธ๋ค๋ฌ, ์ปค์คํ ์๋ฌ ์์ฑ * fix/OPS-222 : controller ์์ฑ ํ ์คํธ ํต๊ณผ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๋ก์ง ์์ฑ * feat/OPS-222 : ์คํ์ด์ค ์ญ์ ๊ตฌํ * fix/OPS-222 : ํ ์คํธ ์ผ์ด์ค ํต๊ณผ * feat/OPS-245 : controller ๋จ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-245 : ์คํ์ด์ค ๋ช ๋ณ๊ฒฝ ๊ตฌํ * fix/OPS-244 : ์ด๋ฆ ๋ณ๊ฒฝ ์ saveAndFlush๋ก ์ฆ์ ๋ฐ์ * chore/OPS-222 : develop ์ต์ ์ฌํญ ๋ฐ์ * fix : ์ ์ฅ * fix/OPS-222 : globalExceptionHandler ์ปจ๋ฒค์ ํต์ผ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ controller ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-244 : membership ๊ด๋ฆฌ ๋น ์์ฑ * feat/OPS-244 : membership ์์ฑ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ฑ * fix : ํ ์คํธ ์ผ์ด์ค ๊ฐ ์ถฉ๋ ํด๊ฒฐ ์ค * fix : ์ต์ ์ฌํญ ๋ฐ์ * ์์์ ์ฅ * ์ด๊ธฐ ์ํ * fix : ๋ฏธ๋ด์ฑ ์ ์ฉ * feat/OPS-244 : ์คํ์ด์ค ๋ฉค๋ฒ ์ถ๊ฐ ๊ธฐ๋ฅ * fix : spaceControllerTest์ memberControllerTest ๊ฐ ์ถฉ๋ ํด๊ฒฐ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * chore/OPS-244 : ์ธ์ฆ ๊ด๋ จ ์ฝ๋ ์ฃผ์ ์ฒ๋ฆฌ * feat/OPS-270 : ์คํ์ด์ค ๋ก์ง์ ์ฌ์ฉ์ ์ ๋ณด ์ฒดํฌ ์ถ๊ฐ * feat/OPS-22 : ํ ์คํธ ์ผ์ด์ค์ WithUserDetails ๋ฐ์ * feat/OPS-222 : ์ธ์ฆ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * fix : ๋ถํ์ํ ์ฃผ์ ์ญ์ * new/OPS-222 : space controller, sevice, repository ๋น ์์ฑ # Conflicts: # src/main/java/org/tuna/zoopzoop/backend/global/initData/BaseInitData.java * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ์๋ํฌ์ธํธ ์ถ๊ฐ * new/OPS-222 : spaceControllerTest ํ์ผ ์ธํ * refactor/OPS-222 : ํ ์คํธ ํด๋์ค์ ๊ณต์ฉ ํํธ ์ถ์ ํด๋์ค๋ก ๋ถ๋ฆฌ * fix : ์ต์ ์ฌํญ ๋ฐ์ * fix/OPS-222 : ํ ์คํธ ์ฝ๋์์ ํ์ ๋ค๋ฅด๋ ๊ฑฐ ์์ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๊ตฌํ * feat/OPS-222 : space ๋จ์ ํธ๋ค๋ฌ, ์ปค์คํ ์๋ฌ ์์ฑ * fix/OPS-222 : controller ์์ฑ ํ ์คํธ ํต๊ณผ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๋ก์ง ์์ฑ * feat/OPS-222 : ์คํ์ด์ค ์ญ์ ๊ตฌํ * fix/OPS-222 : ํ ์คํธ ์ผ์ด์ค ํต๊ณผ * feat/OPS-245 : controller ๋จ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-245 : ์คํ์ด์ค ๋ช ๋ณ๊ฒฝ ๊ตฌํ * fix/OPS-244 : ์ด๋ฆ ๋ณ๊ฒฝ ์ saveAndFlush๋ก ์ฆ์ ๋ฐ์ * chore/OPS-222 : develop ์ต์ ์ฌํญ ๋ฐ์ * fix : ์ ์ฅ * fix/OPS-222 : globalExceptionHandler ์ปจ๋ฒค์ ํต์ผ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ controller ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-244 : membership ๊ด๋ฆฌ ๋น ์์ฑ * feat/OPS-244 : membership ์์ฑ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ฑ * fix : ํ ์คํธ ์ผ์ด์ค ๊ฐ ์ถฉ๋ ํด๊ฒฐ ์ค * fix : ์ต์ ์ฌํญ ๋ฐ์ * ์์์ ์ฅ * ์ด๊ธฐ ์ํ * fix : ๋ฏธ๋ด์ฑ ์ ์ฉ * feat/OPS-244 : ์คํ์ด์ค ๋ฉค๋ฒ ์ถ๊ฐ ๊ธฐ๋ฅ * fix : spaceControllerTest์ memberControllerTest ๊ฐ ์ถฉ๋ ํด๊ฒฐ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * chore/OPS-244 : ์ธ์ฆ ๊ด๋ จ ์ฝ๋ ์ฃผ์ ์ฒ๋ฆฌ * feat/OPS-270 : ์คํ์ด์ค ๋ก์ง์ ์ฌ์ฉ์ ์ ๋ณด ์ฒดํฌ ์ถ๊ฐ * feat/OPS-22 : ํ ์คํธ ์ผ์ด์ค์ WithUserDetails ๋ฐ์ * feat/OPS-222 : ์ธ์ฆ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * fix : ๋ถํ์ํ ์ฃผ์ ์ญ์ * fix : ๋ถํ์ํ ํ์ผ ์ญ์ --------- Co-authored-by: EpicFn <[email protected]> * Ops 272 be feat ์๋ฃ ์ด๋ฆ ์กฐํ (#31) * feat/OPS-211 : ํด๋ ์ด๋ฆ ๋ณ๊ฒฝ ๊ตฌํ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * feat/OPS-272 : ํด๋/ํ์ผ ์กฐํ ๊ตฌํ * refactor/OPS-272 : tag ์์ฑ์ ์ถ๊ฐ * feat/OPS-195 : ๋ด์ค ๋ชฉ๋ก ์กฐํ ๊ธฐ๋ฅ ๊ตฌํ(์ต์ ๋ด์ค, ํค์๋ ๊ธฐ๋ฐ). ์๋น์ค ํ ์คํธ ์ถ๊ฐ. (#33) * refactor/OPS-277 : default ํด๋ ์๋ ์์ฑ (#34) * [chore/OPS-278] Auth, Member, News ๋๋ฉ์ธ ๋ฌธ์ํ ๋ฐ ๊ณ ๋ํ. (#35) * chore/OPS-278 : Auth ๋๋ฉ์ธ ๋ฌธ์ํ ์๋ฃ & ApiV1MemberController ์ถ๊ฐ ๊ธฐ๋ฅ ๊ตฌํ. * refactor/OPS-278 : ApiV1MemberController ์ถ๊ฐ ์ฌํญ์ ๋ง๊ฒ ํ ์คํธ ์ถ๊ฐ ๊ตฌํ. * refactor/OPS-278 : Member ์์ฑ ์, ๋๋คํ UUID์ ์ 5๊ธ์๋ฅผ ํ๊ทธ๋ก ์ฌ์ฉํ๋๋ก ๋ณ๊ฒฝ. * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- Co-authored-by: EpicFn <[email protected]> * refactor/OPS-283 : datasource ์ํฐํฐ ์์ (#39) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * [feat/OPS-175] ์น ํฌ๋กค๋ง ๋ฐ์ดํฐ ์ ์ ํ ๊ธฐ๋ฅ ๊ตฌํ (#41) * feat/OPS-175 : ์น ํฌ๋กค๋ง ๋ฐ์ดํฐ ์ ์ ํ ๊ธฐ๋ฅ ๊ตฌํ * [refactor/OPS-287] News ๋๋ฉ์ธ ๊ณ ๋ํ (#42) * refactor/OPS-287 : newsSearch ๋ฉ์๋ ๋ก์ง ๋ณ๊ฒฝ ๋ฐ ์ผ๋ถ API ๋ฌธ์ํ. * refactor/OPS-287 : NewsServiceTest API๋ฅผ ํธ์ถํ๋ ๋ฐฉ์์ผ๋ก ๋ณ๊ฒฝ. * Ops 226 be feat ์๋ฃ ๋ฑ๋ก (#44) * refactor/OPS-283 : datasource ์ํฐํฐ ์์ * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- Co-authored-by: EpicFn <[email protected]> * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * feat/OPS-226 : ์๋ฃ ๋ฑ๋ก ๊ตฌํ * refactor/OPS-226 : ๋ฉ์๋ ๋ช ์์ --------- Co-authored-by: Hyeok Jin Kim <[email protected]> Co-authored-by: EpicFn <[email protected]> * Ops 215 be feat ์๋ฃ ์ญ์ (#46) * refactor/OPS-283 : datasource ์ํฐํฐ ์์ * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- Co-authored-by: EpicFn <[email protected]> * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * feat/OPS-226 : ์๋ฃ ๋ฑ๋ก ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ --------- Co-authored-by: Hyeok Jin Kim <[email protected]> Co-authored-by: EpicFn <[email protected]> * [feat/OPS-293] LiveBlocks๋ฅผ ์ํ React-flow ๋ฐ์ดํฐ ๊ด๋ฆฌ ๋๋ฉ์ธ ์ค๊ณ ์๋ฃ. ํ ์คํธ ์ถ๊ฐ. (#47) * feat/OPS-293 : LiveBlocks๋ฅผ ์ํ React-flow ๋ฐ์ดํฐ ๊ด๋ฆฌ ๋๋ฉ์ธ ์ค๊ณ ์๋ฃ. ํ ์คํธ ์ถ๊ฐ. * feat/OPS-293 : folder ํ ์คํธ์ @transactional ์ถ๊ฐ. * feat/OPS-293 : MemberServiceTest ์์ #1 * feat/OPS-293 : MemberServiceTest ์์ #2 * feat/OPS-293 : Folder ํ ์คํธ์ ActiveProfile(test) ์ถ๊ฐ. * feat/OPS-293 : ํ ์คํธ์ ๋ฌด๊ฒฐ์ฑ ๊ฒ์ฆ์ ์ํ @afterall, @AfterEach ์ถ๊ฐ. * feat/OPS-293 : ์ผ๋ถ ์์ . * feat/OPS-293 : ์ง์ง ๋ง์ง๋ง ์์ . * [chore/ops-132] CI/CD ํ์ดํ๋ผ์ธ ๊ตฌ์ถ (#43) * chore/OPS-133 : CI ํ์ดํ๋ผ์ธ ๊ตฌ์ถ * chore: ํ ์คํธ/์ด์ ํ๊ฒฝ์ฉ GitHub Actions Terraform ์๋ ์ธํ๋ผ ์ ์ฉ ์ํฌํ๋ก์ฐ ์ถ๊ฐ * chore : ํ๊ฒฝ๋ณ์๋ก test/prod ์๋ฒ ๋ถ๋ฆฌ ๊ฐ๋ฅํ๋๋ก ์ค์ * chore/OPS-135 : CD ์ํฌํ๋ก์ฐ ์ถ๊ฐ * chore: CI ํ CD ์คํ๋๋๋ก ์ค์ * chore : CI ์ํฌํ๋ก์ฐ job ๋ถ๋ฆฌ(ํ ์คํธ,๋น๋/๋์ปค ๋น๋,ghcr push) * chore : docker build jobs์์ checkout ๋จ๊ณ ์ถ๊ฐ * chore: CI ์ํฌํ๋ก์ฐ job ๊ตฌ๋ถ ์์ฐ * chore : develop/main ๋ธ๋์น์ ๋ฐ๋ผ CI/CD ์ํฌํ๋ก์ฐ ๋ถ๋ฆฌ * chore : Spring Boot Acutator ์์กด์ฑ ์ถ๊ฐ * chore: Actions์์ SSH ์ ์ ํ docker ์คํ ๊ถํ ๊ฐ๋๋ก ์ค์ * chore: ์ปจํ ์ด๋ ์คํ ๋ก๊ทธ ํฐ๋ฏธ๋์ ์ถ๋ ฅ ์ค์ * chore : ํฌ์ค์ฒดํฌ ์ค์ * chore: secrets ์ง์ ssh ํ๊ฒฝ ๋ณ์๋ก ์ ๋ฌ * chore: ํ๊ฒฝ๋ณ์ ์ง์ docker run์ ๋ฃ๊ธฐ * chore: spdocker run ์์ ring profile ์ ๊ฑฐ * chore: nginx ์ค์ * chore: test-cd ์์ * chore: test-cd ์์ 2 * chore: ghcr ๋ก๊ทธ์ธ ํ ํฐ ์์ * chore: ๋์ปค ์ด๋ฏธ์ง pull ์ด๋ฆ ์์ * chore: ssh ๋ด ์์ ํ ghcr ๋ก๊ทธ์ธ * chore : ์ด๋ฏธ pullํ ์ด๋ฏธ์ง์ run ์ด๋ฏธ์ง ์ด๋ฆ ์ผ์น์ํค๊ธฐ * chore: mysql driver ์์กด์ฑ ์ถ๊ฐ * chore : ํฌ์ค์ฒดํฌ ์์ฒญ ์คํ๋ง ์ํ๋ฆฌํฐ ํํฐ์ ๊ฑธ๋ฆฌ์ง ์๋๋ก ์ค์ * chore: nginx ํฌํธ ์ค์์นญ ์ค์ * chore: nginx ํฌํธ ์ค์์นญ ์ค์ ์์ * chore: nginx ํฌํธ ์ค์์นญ ์ค์ ์์ 2 * chore: ์ด์์๋ฒ CD ์ํฌํ๋ก์ฐ ์์ * chore : prod-server ์ํฌํ๋ก์ฐ ํ์ฑํ ๊ฒฝ๋ก ์ค์ * chore : test commit ๋์ค์ ์ง์ฐ๊ธฐ * [Feat/OPS-214] ์คํ์ด์ค ๋ฉค๋ฒ ๊ด๋ฆฌ (#50) * feat/OPS-227 : ์คํ์ด์ค ๋ฉค๋ฒ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-227 : ์คํ์ด์ค ๋ชฉ๋ก ๋ฐํ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-251 : ๊ถํ ๋ณ๊ฒฝ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-214 : ๊ถํ ๋ณ๊ฒฝ ์๋ํฌ์ธํธ ๊ตฌํ * fix/OPS-214 : ๋จ์ ๋ฉ์ธ์ง ์ค๋ฅ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-214 : ๋ก์ง ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-251 : globalExceptionHandler์ ์ญ์ง๋ ฌํ ์คํจ ์๋ฌ ์ถ๊ฐ * refactor/OPS-214 : ๋น์ฆ๋์ค ๋ก์ง์ ์๋น์ค ๊ณ์ธต์ ์ผ์ * feat/OPS-231 : ์คํ์ด์ค ์ด๋ ์ปจํธ๋กค๋ฌ ํ ์คํธ์ผ์ด์ค ์์ฑ * feat/OPS-231 : ์คํ์ด์ค ์ด๋ ๋ก์ง ์์ฑ * feat/OPS-231 : ์คํ์ด์ค์ด๋ ์๋น์ค ๋น ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * feat/OPS-228 : ํ์ ํด์ถ ์ปจํธ๋กค๋ฌ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feeat/OPS-229 : ํ์ ํด์ถ ๊ตฌํ ์๋ฃ * fix : ๊ธฐ์กด ํ ์คํธ ์ผ์ด์ค ์ผ๊ด์ฑ ์๊ฒ ์์ * feat : ๋ฉค๋ฒ ํด์ถ ์๋น์ค ํ ์คํธ ์ฝ๋ ์์ฑ * refactor : DTO ํจํค์ง ๋ณ๊ฒฝ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ์ปจํธ๋กค๋ฌ ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ๋ก์ง ์์ฑ * refactor : space ๋๋ฉ์ธ dto ํจํค์ง ๋ณ๊ฒฝ * feat/OPS-227 : ์คํ์ด์ค ๋ฉค๋ฒ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-227 : ์คํ์ด์ค ๋ชฉ๋ก ๋ฐํ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-251 : ๊ถํ ๋ณ๊ฒฝ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-214 : ๊ถํ ๋ณ๊ฒฝ ์๋ํฌ์ธํธ ๊ตฌํ * fix/OPS-214 : ๋จ์ ๋ฉ์ธ์ง ์ค๋ฅ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-214 : ๋ก์ง ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-251 : globalExceptionHandler์ ์ญ์ง๋ ฌํ ์คํจ ์๋ฌ ์ถ๊ฐ * refactor/OPS-214 : ๋น์ฆ๋์ค ๋ก์ง์ ์๋น์ค ๊ณ์ธต์ ์ผ์ * feat/OPS-231 : ์คํ์ด์ค ์ด๋ ์ปจํธ๋กค๋ฌ ํ ์คํธ์ผ์ด์ค ์์ฑ * feat : ์ต์ ์ฌํญ ๋ฐ์ * feat/OPS-231 : ์คํ์ด์ค์ด๋ ์๋น์ค ๋น ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * feat/OPS-228 : ํ์ ํด์ถ ์ปจํธ๋กค๋ฌ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feeat/OPS-229 : ํ์ ํด์ถ ๊ตฌํ ์๋ฃ * fix : ๊ธฐ์กด ํ ์คํธ ์ผ์ด์ค ์ผ๊ด์ฑ ์๊ฒ ์์ * feat : ๋ฉค๋ฒ ํด์ถ ์๋น์ค ํ ์คํธ ์ฝ๋ ์์ฑ * refactor : DTO ํจํค์ง ๋ณ๊ฒฝ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ์ปจํธ๋กค๋ฌ ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ๋ก์ง ์์ฑ * refactor : space ๋๋ฉ์ธ dto ํจํค์ง ๋ณ๊ฒฝ --------- Co-authored-by: EpicFn <[email protected]> * refactor/OPS-308 : ๋๋ฉ์ธ ๋ถ๋ฆฌ & CI ์ํฌํ๋ก์ฐ์ application-secrets-server.yml ์ถ๊ฐ. (#52) * Ops 255 be feat ์๋ฃ ์์ (#54) * refactor/OPS-283 : datasource ์ํฐํฐ ์์ * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- Co-authored-by: EpicFn <[email protected]> * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * feat/OPS-226 : ์๋ฃ ๋ฑ๋ก ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-255 : ์๋ฃ ์ด๋ ๋ฐ ์์ ๊ตฌํ --------- Co-authored-by: Hyeok Jin Kim <[email protected]> Co-authored-by: EpicFn <[email protected]> * feat/OPS-289 : dataprocessor ์๋น์ค ์์ฑ (#59) * fix/OPS-318 : proxy host ์ค์์นญรฌ๏ฟฝ ssl ์ธ์ฆ์ ์ ์ง (#60) * [refactor/OPS-310] redirect url ๋ณ๊ฒฝ (#53) * refactor/OPS-310 : redirect-url ๋ณ๊ฒฝ. * refactor/OPS-310 : ์์ ์์ . * refactor/OPS-310 : ๋ ํ๋์ ์์ ์์ . * refactor/OPS-310 : ํฐ ์์ . * refactor/OPS-310 : ํ ์คํธ * refactor/OPS-310 : ์์ฒญ ์ฌํญ ๋ฐ์. * refactor/OPS-310 : ์์ฒญ ์ฌํญ ๋ฐ์ #2 * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ (#64) * [refactor/OPS-323] News API ์กฐํ ๋ก์ง ์์ . (#65) * ๋ฐฐํฌ ํ ์คํธ #2 * ๋ก์ง ์์ ํ ์คํธ * ๋ก์ง ์์ ํ ์คํธ #2 * refactor/OPS-322 : source ์นผ๋ผ๋ช ์์ (#68) * refactor/OPS-322 : source ์นผ๋ผ๋ช ์์ * refactor/OPS-322 : source ์นผ๋ผ๋ช ์์ * feat/OPS-321 : dataProcessorService์์ ์์ฝ ๋ก์ง ์์ฑ (#69) * [fix/OPS-317] CI/CD ํ์ดํ๋ผ์ธ ์ด๋ฒคํธ ๋ถ๋ฆฌ (#66) * fix : prod-server nginx ์ ๋ณด ์ถ๋ ฅ ์ ๊ฑฐ * fix : prod-server CD ์ํฌํ๋ก์ฐ main์ push๋ ๋ ์คํ๋๋๋ก ์์ * fix : test-server CI๋ pr์ develop์ ์คํ, CD๋ push๋ ๋ ์คํ * fix : test-server CI ์ํฌํ๋ก์ฐ์์ CD ๋ถ๋ถ ์ ๊ฑฐ * chore : ๋น๋์ aws๊ด๋ จ ์ ๋ณด application-secret.yml์ ๋ค์ด๊ฐ๋๋ก ์ค์ (#73) * chore : S3 ์ฌ์ฉ์ ์ํด ๋น๋์ AWS ์ ๋ณด application-secrets.yml์ ์ถ๊ฐ๋๋๋ก ์ค์ * chore : ์ญํ ์ S3 ์ ๊ทผ ์ ์ฑ ๋ถ์ฐฉ ํ๋๋ก ์ค์ * chore : รฃyml์ ์ถ๊ฐ์ ๋ณด ๋ฃ๋๋ก ์ค์ * [Feat/OPS-275] ์คํ์ด์ค ์ธ๋ค์ผ ์ด๋ฏธ์ง ์ ์ฅ (#71) * chore : S3 ํ๊ฒฝ ์ค์ * feat : S3Service ๊ตฌ์ฑ * chore : multipart ๋ฐ์ดํฐ ํฌ๊ธฐ ์ค์ * feat : S3 ์ ๋ก๋ ํ ์คํธ์ฉ ์๋ํฌ์ธํธ ์์ฑ * feat : S3 ์ฐ๋ ์๋ฃ * feat : space entity์ imageUrl ํญ๋ชฉ ์ถ๊ฐ * feat : ์ธ๋ค์ผ ์บก์ฒ ํ ์คํธ์ฉ * feat : ์ธ๋ค์ผ ์ดฌ์ ํ ์คํธ ์๋ํฌ์ธํธ ์์ฑ * feat : ์คํ์ด์ค ์ธ๋ค์ผ ๊ฐฑ์ API ์์ฑ * feat : ์คํ์ด์ค ์ด๋ฏธ์ง ๊ฐฑ์ ๊ธฐ๋ฅ ์์ฑ * feat : ์คํ์ด์ค ๋ชฉ๋ก ๋ฐํ ์ ์ธ๋ค์ผ url ๊ฐ์ด ๋ฐํ * feat : ์คํ์ด์ค ๋จ๊ฑด ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat : ์คํ์ด์ค ๋จ๊ฑด ์กฐํ ๊ตฌํ * feat : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ํ์ด์ง ๊ธฐ๋ฅ ์ถ๊ฐ --------- Co-authored-by: EpicFn <[email protected]> * [feat/OPS-324] ํฌ๋กฌ ํ์ฅ ํ๋ก๊ทธ๋จ ์์ ๋ก๊ทธ์ธ ๋ถ๊ธฐ & ์์ ๋ก๊ทธ์ธ ํ ์คํธ API ์ถ๊ฐ. (#70) * feat/OPS-324 : ํ์ฅ ํ๋ก๊ทธ๋จ ๋ถ๊ธฐ ๋ฐ ์์ ๋ก๊ทธ์ธ ํ ์คํธ API ์ถ๊ฐ. * feat/OPS-324 : ํ ์คํธ ๋ก์ง ์ผ๋ถ ์์ . * feat/OPS-324 : ํ ์คํธ ๋ก์ง ์ผ๋ถ ์์ . #2 * feat/OPS-324 : ํ ์คํธ ์๋ฃ, ํ ์คํธ ์ฝ๋ ์ ๊ฑฐ. * feat/OPS-324 : ๋ก๊ทธ์ธ ๋ถ๊ธฐ ์์ . * feat/OPS-324 : state ์ ๋ณด๋ฅผ ์ ์ฅํ๋ resolver ์ถ๊ฐ. * feat/OPS-324 : session ๋ฑ๋ก์ ์ํ OAuth2LoginSourceFilter ํด๋์ค ์ถ๊ฐ. * feat/OPS-324 : ํด๊ฒฐ * fix : ci ์ secrets ์์ S3 ๊ด๋ จ ์ํฌ๋ฆฟ ๊ฐ ์ญ์ ํ๋๋ก ๋ณ๊ฒฝ(๋ฒํท๋ช ์ ์ธ) (#74) * fix : ci ์ secrets ์์ S3 ๊ด๋ จ ์ํฌ๋ฆฟ ๊ฐ ์ญ์ ํ๋๋ก ๋ณ๊ฒฝ(๋ฒํท๋ช ์ ์ธ) * fix : CI ์คํ ์์ * fix : build ๋จ๊ณ์์ testest๋ฅผ ์ํํ์ง ์๋๋ก ๋ณ๊ฒฝ --------- Co-authored-by: EpicFn <[email protected]> * [feat/OPS-198] ์์นด์ด๋ธ ์ ๋ณด๋ก ๋ด์ค ๋ชฉ๋ก ์กฐํ (#75) * feat/OPS-198 : ์์นด์ด๋ธ ๊ธฐ๋ฐ ๋ด์ค ์กฐํ ๊ตฌํ. * feat/OPS-198 : ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ. * feat/OPS-265 : LLM-ํ์ฉ-๋ฐ์ดํฐ-์ ์ ํ-์-๊ธฐ์กด-์์นด์ด๋ธ์-ํ๊ทธ-์ฐ๋ (#77) * refactor/OPS-319: ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ (#76) * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * fix : SpringDoc๊ณผ Spring AI ๊ฐ ์์กด์ฑ ์ถฉ๋ ํด๊ฒฐ (#79) * [Feat/OPS-327] ์๋ฃ ๋ฑ๋ก llm ์ฐ๋ (#78) * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-327 : ์๋ฃ ๋ฑ๋ก LLM ์ฐ๋ * [feat/OPS-328] ์ธ์ฆ/์ธ๊ฐ ๋ก์ง ๋ณ๊ฒฝ (#80) * feat/OPS-328 : RefreshToken์ ์๋ฒ์์ ์ ์ฅํ๋๋ก ๋ณ๊ฒฝ. API ์ผ๋ถ ์์ . * feat/OPS-328 : ํ์ฅ ํ๋ก๊ทธ๋จ ๋ก๊ทธ์ธ ๋ฉ์๋ ์ถ๊ฐ ๋ฐ ๋ฐ์ดํฐ ์บ์ฑ ๋ฉ์๋ ์ถ๊ฐ. * [refactor/OPS-337] ์๊ตฌ์ฌํญ ๋ฐ์ ๋ฐ ์ผ๋ถ ๋ก์ง ์์ . (#81) * refactor/OPS-337 : ํ๋ก ํธ ์๊ตฌ์ฌํญ ๋ฐ์ ๋ฐ ์๋ฌ ์์ . * refactor/OPS-337 : ํ ์คํธ ์ผ์ด์ค ์์ . * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ (#82) * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : mock ์ถ๊ฐ๋ก ์ธํ testcase ์์ * [feat/OPS-338] ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ (#83) * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : mock ์ถ๊ฐ๋ก ์ธํ testcase ์์ * refactor/OPS-338 : Dev ํ ํฐ ๋ฐ๊ธ ์ปจํธ๋กค๋ฌ ์ถ๊ฐ * [Feat/OPS-326] ๋์๋ณด๋ ๋ฐ์ดํฐ ์ ์ฅ ์ฒด๊ณ ๊ตฌ์ถ (#85) * refactor : graph ๋๋ฉ์ธ์ dashboard ๋๋ฉ์ธ์ผ๋ก ์์ , dashboard ์ํฐํฐ ์์ฑ * feat : ์คํ์ด์ค ๋จ๊ฑด ์กฐํ ์ ๋์๋ณด๋ id๋ ํจ๊ป ๋ฐํ * refactor : API ๋ช ๋ณ๊ฒฝ * dashboard ๊ธฐ๋ฐ์ผ๋ก ์ ์ฅ/์กฐํ ๋๋๋ก ๋ณ๊ฒฝ * refactor : ํ ์คํธ ์ฝ๋ ์์ * fix : ๋ฐํ ๋ฉ์ธ์ง ์์ * feat : ์๋ช ๊ฒ์ฆ ๋ก์ง ๊ตฌํ * refactor : signature ์๋น์ค ๋ถ๋ฆฌ * fix : ์คํ ์์ * fix : CI ํ์ดํ๋ผ์ธ ์์ --------- Co-authored-by: EpicFn <[email protected]> * [feat/OPS-329] Sentry๋ฅผ ํตํ ๋ชจ๋ํฐ๋ง ํ๊ฒฝ ๊ตฌ์ถ. (#86) * feat/OPS-329 : Sentry๋ฅผ ํตํ ๋ชจ๋ํฐ๋ง ํ๊ฒฝ ๊ตฌ์ถ. * feat/OPS-329: ์ถ๊ฐ๋ก ํ๋ก ํธ ์๊ตฌ ์ฌํญ ๋ฐ์. * refactor/OPS-353 : ๋ถ๋ฆฌ ์๋ฃ. (#87) * [refactor/OPS-354] ํ ์คํธ ์ผ์ด์ค ์ฌ์ฉ ํ๋กํ ๋ณ๊ฒฝ. (#88) * refactor/OPS-354 : ํ ์คํธ ์ผ์ด์ค ์ฌ์ฉ ํ๋กํ ๋ณ๊ฒฝ. * refactor/OPS-354 : ์ด๋๋ ์๋ผ? * refactor/OPS-355 : ์๊ตฌ ์ฌํญ ๋ฐ์. (#91) * feat/OPS-358: Redis ์์กด์ฑ ์ถ๊ฐ ๋ฐ RedisConfig ์ค์ ์๋ฃ. AuthResultData ์ง๋ ฌํ ๋ฐ AuthResult ํด๋์ค์ TTL ๋์ . (#92) * feat/OPS-356 : ๋ค์ด๋ฒ ๋ธ๋ก๊ทธ ํฌ๋กค๋ฌ ์์ฑ (#93) * [feat/OPS-252] ์กฐ๊ฑด๋ณ ์๋ฃ ๊ฒ์ (#89) * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-327 : ์๋ฃ ๋ฑ๋ก LLM ์ฐ๋ * refactor/OPS-252 : ์กฐ๊ฑด๋ณ ์๋ฃ ๊ฒ์ ๊ตฌํ * refactor/OPS-252 : ์กฐ๊ฑด๋ณ ์๋ฃ ๊ฒ์ * fix : ์คํ์ด์ค, ์ฌ์ฉ์ ๋ชฉ๋ก ๋ฐํ ์ ํญ์ id ์ค๋ฆ์ฐจ์ ์ ๋ ฌ (#94) Co-authored-by: EpicFn <[email protected]> * IllegalStateException(๋์์ฑ ๋ฌธ์ )๊ด๋ จ ์ฒ๋ฆฌ ๋ฉ์๋ ์ถ๊ฐ. (#95) * [fix/OPS-362] ์๊ตฌ ์ฌํญ ๋ฐ์ (#96) * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์. * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#2 * [feat/OPS-341] ๋ฒจ๋ก๊ทธ ํฌ๋กค๋ฌ ์์ฑ (#90) * feat/OPS-341 : Velog ํฌ๋กค๋ฌ ์์ฑ * fix : createDate,modifyDate ์๋ ์ ์ฉ๋๋๋ก ์ค์ * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#3 (#97) * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#4 (#98) * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#5 (#99) * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#6 (#100) * [refactor/OPS-360] folder&datasource ๋ฆฌํํ ๋ง (#101) * refactor/OPS-360 : OpenAPI ์ ๋ํ ์ด์ ์ถ๊ฐ * refactor/OPS-360 : NoResultException ์์ธ ๋ถ๋ฆฌ * refactor/OPS-360 : param ์ถ๊ฐ * refactor/OPS-360 : param ์ถ๊ฐ * refactor/OPS-360 : default ํด๋ CRUD ๋ก์ง ์์ * refactor/OPS-360 : ํด๋ ๋ฆฌ์คํธ๋ ํธ์ถ ๋ก์ง ์์ * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#7 (#102) * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#8 (#103) * hotfix/OPS-346 : ํ์ผ ์กฐํ ์์ (#104) * [feat/OPS-365 ] soft delete + ํด์งํต ์กฐํ ๊ตฌํ (#105) * feat/OPS-365 : soft delete + ํด์งํต ์กฐํ ๊ตฌํ * refactor/OPS-246 : ์๊ตฌ์ฌํญ ๋ฆฌํฉํ ๋ง * chore : rabbitmq ํ๊ฒฝ์ค์ (#106) * chore : rabbitmq ๋ก์ปฌ ๊ฐ๋ฐ ํ๊ฒฝ ์ค์ * chore : rabbitmq ๊ด๋ จ springboot ํ๊ฒฝ ์ค์ * chore: rabbitmq ์์กด์ฑ ์ถ๊ฐ * [Feat/OPS-344] message queue ๊ตฌํ (#107) * chore : RabbitMQ ํ๊ฒฝ ์ค์ * chore : CI ํ์ดํ๋ผ์ธ์์ RabbitMQ ์ปจํ ์ด๋๋ฅผ ๋์์ ์ฌ์ฉํ๋๋ก ์ค์ * new : RabbitMQ ์ค์ ํด๋์ค, dto ์์ฑ * feat : producer method ์์ฑ * feat : ๋ฉ์ธ์ง ํ ๊ตฌํ ์๋ฃ * feat : ๋ฐ์ดํฐ ์ ์ฅ ์์ฒญ ํ ์คํธ ์ผ์ด์ค ์์ * feat : ConsumerTest ์ฝ๋ ์ถ๊ฐ * fix : ์ ์ฅ ํ ์คํธ ์ผ์ด์ค ์ฑ๊ณต * fix : ํ ์คํธ ์ฝ๋ ์์ ์ค * fix : ํ ์คํธ ์ผ์ด์ค ์ฑ๊ณต * feat : dlq ๋์ * feat : ๋ฐ์ดํฐ ์์ ๋ณด์ฅ์ ์ํด version ์ถ๊ฐ * refactor : MQConfig ํ์ผ ์์น ๋ณ๊ฒฝ * chore : RabbitMQ ํ๊ฒฝ ์ค์ # Conflicts: # docker-compose.yml # src/main/resources/application.yml * chore : CI ํ์ดํ๋ผ์ธ์์ RabbitMQ ์ปจํ ์ด๋๋ฅผ ๋์์ ์ฌ์ฉํ๋๋ก ์ค์ * new : RabbitMQ ์ค์ ํด๋์ค, dto ์์ฑ * feat : producer method ์์ฑ * feat : ๋ฉ์ธ์ง ํ ๊ตฌํ ์๋ฃ * feat : ๋ฐ์ดํฐ ์ ์ฅ ์์ฒญ ํ ์คํธ ์ผ์ด์ค ์์ * feat : ConsumerTest ์ฝ๋ ์ถ๊ฐ * fix : ์ ์ฅ ํ ์คํธ ์ผ์ด์ค ์ฑ๊ณต * fix : ํ ์คํธ ์ฝ๋ ์์ ์ค * fix : ํ ์คํธ ์ผ์ด์ค ์ฑ๊ณต * feat : dlq ๋์ * feat : ๋ฐ์ดํฐ ์์ ๋ณด์ฅ์ ์ํด version ์ถ๊ฐ * refactor : MQConfig ํ์ผ ์์น ๋ณ๊ฒฝ * fix : ์ต์ ์ฌํญ ๋ฐ์ * fix : copilot review ๋ฐ์ * feat : Dashboard์์ graph ์ฐธ์กฐ ๋ฐฉ์ EAGER -> LAZY ๋ก ๋ณ๊ฒฝ * CI ์คํจํด์ ๋ค์ EAGER๋ก ๋ณ๊ฒฝ * fix : ๋ค์ LAZY๋ก ๋ณ๊ฒฝ --------- Co-authored-by: EpicFn <[email protected]> * [Refactor/OPS-373] ์๋ฃ ์กฐํ ๊ฒ์ ์๊ตฌ์ฌํญ ์์ (#108) * refactor/OPS-373 : ์๋ฃ ์ด๋ฆ unique ์์ฑ ์ญ์ * refactor/OPS-373 : ์๋ฃ ์์ ๊ฐ๋ฅ ์นผ๋ผ ์ถ๊ฐ * refactor/OPS-373 : ๋ช ์์ null๊ณผ ๋ฏธ์ ๋ฌ ๊ตฌ๋ถ * [Feat/OPS-376] ์คํ์ด์ค ๋ชฉ๋ก ์ฐธ์ฌ ์ธ์ ๋ฐํ api ๊ตฌ์ฑ (#109) * refactor : dto ์ด๋ฆ ์ผ๋ถ ๋ณ๊ฒฝ * feat : ๊ตฌํ ์๋ฃ * feat : ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * fix : ํ ์คํธ ์ผ์ด์ค ์์ --------- Co-authored-by: EpicFn <[email protected]> * [Refactor/OPS-290] ๋ฐ์ดํฐ์์ค ์ ์ ํ ๊ธฐ๋ฅ ๊ณ ๋ํ (#112) * refactor/OPS-290 : ๋ฐ์ดํฐ์์ค ์ ์ ํ ๊ธฐ๋ฅ ๊ณ ๋ํ * [Feat/OPS-346] ๊ณต์ ํด๋ ๊ด๋ฆฌ (#113) * refactor/OPS-360 : OpenAPI ์ ๋ํ ์ด์ ์ถ๊ฐ * refactor/OPS-360 : NoResultException ์์ธ ๋ถ๋ฆฌ * refactor/OPS-360 : param ์ถ๊ฐ * refactor/OPS-360 : param ์ถ๊ฐ * refactor/OPS-360 : default ํด๋ CRUD ๋ก์ง ์์ * refactor/OPS-360 : ํด๋ ๋ฆฌ์คํธ๋ ํธ์ถ ๋ก์ง ์์ * refactor/OPS-346 : ๊ณต์ ํด๋ ๊ด๋ฆฌ * feat/OPS-365 : soft delete + ํด์งํต ์กฐํ ๊ตฌํ * feat/OPS-346 : ๊ณต์ ํด๋ ๊ด๋ฆฌ * feat/OPS-346 : ๊ณต์ ํด๋ ๊ด๋ฆฌ * refactor/OPS-346 : ๊ฐ์ธ / ๊ณต์ ํณ๋ ๊ด๋ฆฌ ๋ถ๋ฆฌ * refactor/OPS-346 : ๊ฒ์ ๊ธฐ๋ฅ ์ถ์ฒ ๋๋ฝ ์์ * feat : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ์ ์์ฑ ์ผ์๋ ๋ฐํ (#114) Co-authored-by: EpicFn <[email protected]> * [feat/OPS-377] ์ด์/ํ ์คํธ ์๋ฒ ๋ถ๋ฆฌ ์์ (#115) * feat/OPS-377 : ํ ์คํธ/์ด์ ํ๊ฒฝ ๋ถ๋ฆฌ * feat/OPS-377 : ํ ์คํธ/์ด์ ํ๊ฒฝ ๋ถ๋ฆฌ #2 * feat/OPS-377 : ํ ์คํธ/์ด์ ํ๊ฒฝ ๋ถ๋ฆฌ #3 * feat/OPS-377 : ํ ์คํธ/์ด์ ํ๊ฒฝ ๋ถ๋ฆฌ #4 * [Fix/OPS-378] ๋์๋ณด๋ ํ์ entity ์์ (#117) * fix : node, edge dto ์์ * fix : ํ ์คํธ ์ผ์ด์ค ์์ * fix : ํ ์คํธ ์์ ์๋ฃ * fix : ์คํ ์์ * fix : ์คํ ์ถ๊ฐ ์์ ; --------- Co-authored-by: EpicFn <[email protected]> * [Feat/OPS-379] liveblocks ์ฐ๋ (#118) * new : Liveblock API ํธ์ถ์ ์ํ Client ๋น ์์ฑ * feat : ์คํ์ด์ค ์์ฑ/์ญ์ ์ liveblocks room ๋ ํจ๊ป ์์ฑ/์ญ์ * fix : test ์ mock ๋น ์ฌ์ฉ * feat : jwt ๋ฐ๊ธ ๋ก์ง ๊ตฌํ --------- Co-authored-by: EpicFn <[email protected]> * [Feat/OPS-246] ๊ณต์ ํ์ผ ๊ด๋ฆฌ (#119) * refactor/OPS-360 : OpenAPI ์ ๋ํ ์ด์ ์ถ๊ฐ * refactor/OPS-360 : NoResultException ์์ธ ๋ถ๋ฆฌ * refactor/OPS-360 : param ์ถ๊ฐ * refactor/OPS-360 : param ์ถ๊ฐ * refactor/OPS-360 : default ํด๋ CRUD ๋ก์ง ์์ * refactor/OPS-360 : ํด๋ ๋ฆฌ์คํธ๋ ํธ์ถ ๋ก์ง ์์ * refactor/OPS-346 : ๊ณต์ ํด๋ ๊ด๋ฆฌ * feat/OPS-365 : soft delete + ํด์งํต ์กฐํ ๊ตฌํ * feat/OPS-346 : ๊ณต์ ํด๋ ๊ด๋ฆฌ * feat/OPS-346 : ๊ณต์ ํด๋ ๊ด๋ฆฌ * feat/OPS-246 : ๊ณต์ ํ์ผ ๊ด๋ฆฌ * refactor/OPS-346 : ๊ฐ์ธ / ๊ณต์ ํณ๋ ๊ด๋ฆฌ ๋ถ๋ฆฌ * refactor/OPS-346 : ๊ฐ์ธ / ๊ณต์ ํ์ผ ๊ด๋ฆฌ ๋ถ๋ฆฌ * refactor/OPS-346 : ๊ฒ์ ๊ธฐ๋ฅ ์ถ์ฒ ๋๋ฝ ์์ * feat/OPS-246 : ๊ฐ์ธ / ๊ณต์ ํ์ผ ๊ด๋ฆฌ ๋ถ๋ฆฌ * feat/OPS-246 : api ์์ฒญ ์์ * feat/OPS-246 : api ์์ฒญ ์์ - request ์ด๋ฆ ํต์ผ * refactor/OPS-246 : ๋จธ์ง * refactor/OPS-246 : ๋จธ์ง * [Feat/OPS-388] ๋ค๊ฑด์ญ์ DELETE ๋ณธ๋ฌธ ์์ (#122) * refactor/OPS-388 : ๋ค๊ฑด์ญ์ DELETE ๋ณธ๋ฌธ ์์ * refactor/OPS-388 : ๋ค๊ฑด์ญ์ DELETE ํ ์คํธ ์ผ์ด์ค ์์ * Hotfix/์คํ์ด์ค์ด๋๋ชฉ๋ก ๋ฐํ ์ invite id ํฌํจ (#123) * fix : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์ inviteId ๋ฐํํ๋๋ก ๋ณ๊ฒฝ * fix : ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ --------- Co-authored-by: EpicFn <[email protected]> * [Feat/OPS-379] liveblocks ์ฐ๋ (#124) * new : Liveblock API ํธ์ถ์ ์ํ Client ๋น ์์ฑ * feat : ์คํ์ด์ค ์์ฑ/์ญ์ ์ liveblocks room ๋ ํจ๊ป ์์ฑ/์ญ์ * fix : test ์ mock ๋น ์ฌ์ฉ * feat : jwt ๋ฐ๊ธ ๋ก์ง ๊ตฌํ * fix : SpaceArchiveDataSourceControllerTest์์ liveblocks ๋น mock ์ฒ๋ฆฌ * fix : ์คํ ์์ --------- Co-authored-by: EpicFn <[email protected]> * refactor : secrets๊ฐ ์ปจํ ์ด๋ ์คํ์ ํ๊ฒฝ๋ณ์๋ก ์ฃผ์ ๋๋๋ก ์์ (#120) * refactor: ๋น๋ ์ secrets.yml ํ์ผ ์ญ์ * refactor : ํ ์คํธ ์๋ฒ ํ๊ฒฝ๋ณ์ ์ฃผ์ ์ค์ * refactor : ์ด์์๋ฒ ํ๊ฒฝ๋ณ์ ์ฃผ์ ์ค์ * refactor : ์ด์ํ๊ฒฝ๋ณ YML ๋ถ๋ฆฌ ๋ฐ ๋ฐฐํฌ ํ๊ฒฝ ์ค์ ๊ตฌ์กฐ ๊ฐ์ * refactor : ๋ก์ปฌ(dev,test).yml ๋ณต๊ตฌ * refactor : ๋น๋์ ํ ์คํธ secrets.yml V2๋ก ๋ณ๊ฒฝ * refactor: gradle ํ ์คํธ์ ํ๊ฒฝ๋ณ์๋ก ์ค์ ๊ฐ ์ฃผ์ * refactor: ymlํ์ผ ๋ค์ฌ์ฐ๊ธฐ ์์ * refactor: yml ํ๋ ์ด์คํ๋ ๋ค์ด๋ฐ ๊ท์น ์ผ๊ด์ฑ ์ ์งํ๋๋ก ์์ * [Feat/ops-379] feat liveblocks ์ฐ๋ (#127) * new : Liveblock API ํธ์ถ์ ์ํ Client ๋น ์์ฑ * feat : ์คํ์ด์ค ์์ฑ/์ญ์ ์ liveblocks room ๋ ํจ๊ป ์์ฑ/์ญ์ * fix : test ์ mock ๋น ์ฌ์ฉ * feat : jwt ๋ฐ๊ธ ๋ก์ง ๊ตฌํ * fix : SpaceArchiveDataSourceControllerTest์์ liveblocks ๋น mock ์ฒ๋ฆฌ * fix : ์คํ ์์ * new : Liveblock API ํธ์ถ์ ์ํ Client ๋น ์์ฑ # Conflicts: # src/main/java/org/tuna/zoopzoop/backend/global/clients/liveblocks/LiveblocksClient.java --------- Co-authored-by: EpicFn <[email protected]> * fix : ์คํ ์์ (#128) Co-authored-by: EpicFn <[email protected]> * [Hotfix] ํ์ดํ๋ผ์ธ ์คํ ์์ (#129) * fix : ์คํ ์์ * fix : bucket ์คํ ์์ * fix: S3 ๊ด๋ จ ๊ฐ ๋กค๋ฐฑ --------- Co-authored-by: EpicFn <[email protected]> * refactor: s3 prefix separation (#131) * refactor: S3 prefix ํ๊ฒฝ๋ณ์ ๋ถ๋ฆฌ ๋ฐ server ํ๋กํ์ผ ์ค์ ์ถ๊ฐ * fix: cd ์คํ ์์ * fix : docker run ์ฃผ์ ์์ฐ * refactor: s3 prefix separation (#132) * refactor: S3 prefix ํ๊ฒฝ๋ณ์ ๋ถ๋ฆฌ ๋ฐ server ํ๋กํ์ผ ์ค์ ์ถ๊ฐ * fix: cd ์คํ ์์ * fix : docker run ์ฃผ์ ์์ฐ * fix: bucket ์คํ ์์ * fix: ์คํ ์ ๊ฑฐ * [fix/OPS-390] Secret ๊ฐ ๊ด๋ จ ์ผ๋ถ ์์ (#126) * fix/OPS-390 : secret ํ ํ๋ฆฟ ๋ฐ ์์ ์ฌํญ์ ๋ง๊ฒ ์ฝ๋ ๋ณ์๋ช ๋ณ๊ฒฝ. * feat/OPS-390: NEWS API ์์ ์ถ๊ฐ ์ฌํญ ๋ฐ์. * feat/OPS-390: CI ์ํฌํ๋ก์ฐ ์ผ๋ถ ์์ . * feat/OPS-390: ์ผ๋ถ placeholders ์์ . * feat/OPS-390: ์ผ๋ถ ๋ฌธ์ํ ํญ๋ชฉ ์์ . * refactor: s3 prefix ๋ถ๋ฆฌ ๋ฐ ci/cd ์์ ํ (#134) * refactor: S3 prefix ํ๊ฒฝ๋ณ์ ๋ถ๋ฆฌ ๋ฐ server ํ๋กํ์ผ ์ค์ ์ถ๊ฐ * fix: bucket ์คํ ์์ * [Hotfix] ๋ก๊ทธ์ธ ์๋ฌ ์์ (#135) * Update README.md * Remove unnecessary blank line in ApiV1DashboardController * [Feat/OPS-389] ์คํ์ด์ค ์ด๋ ์๋ฆผ ๊ตฌํ (#136) * new : emitter ๊ด๋ฆฌ service, controller ์์ฑ * feat : ํํธ๋นํธ ๋ก์ง ๊ตฌํ * fix : ๋น๋๊ธฐ ์ฒ๋ฆฌ ํ๋๋ก ๋ณ๊ฒฝ * feat : ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * fix : ํ ์คํธ ์์ * fix : ๋ถํ์ํ ์ด๋ ธํ ์ด์ ์ญ์ --------- Co-authored-by: EpicFn <[email protected]> * [feat/OPS-392] ์ฌ์ฉ์ ๊ฒ์ ๊ธฐ๋ฅ ์ถ๊ฐ (#137) * feat/OPS-392: ๊ฒ์ ๊ธฐ๋ฅ ์ถ๊ฐ & ElasticSearch ๊ตฌํ & ์ผ๋ถ ๋๋ฉ์ธ ์ค๋ฅ ์์ . * feat/OPS-392: CI ์ํฌํ๋ก์ฐ์ ElasticSearch ์๋น์ค ์ปจํ ์ด๋ ์์ฑ ๋ก์ง ์ถ๊ฐ. * feat/OPS-392: CI ์ํฌํ๋ก์ฐ์ ElasticSearch ์๋น์ค ์ปจํ ์ด๋ ์์ฑ ๋ก์ง ์ถ๊ฐ #2 * feat/OPS-392: ์ถ๊ฐ ๋๋ฉ์ธ ์ค๋ฅ ์์ . * feat/OPS-392: Docker-compose์ elastic-search ์๋น์ค ํญ๋ชฉ ์ถ๊ฐ. * fix: ๋๋ฉ์ธ ์์ฒญ ์ฌํญ์ ๋ง๊ฒ ์์ . (#138) * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. (#139) * ๋ฐฐํฌ์ฉ ์ปค๋ฐ (#140) * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #2 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. (#142) * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #2 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #3 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #4 * [Feat/OPS-391] ์์นด์ด๋ธ ์๋ฃ img ์๋ฃ ํ์ ์์ (#141) * feat/OPS-391 : ์ด๋ฏธ์ง ์์ multi part ๊ตฌํ * feat/OPS-391 : ์ด๋ฏธ์ง ์์ multi part ๊ตฌํ * refactor/OPS-391 : enum ๋์๋ฌธ์ ๋ฌด์ * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. (#143) * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #2 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #3 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #4 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #5 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #6 * fix: ์ด์์๋ฒ rabbitmq ํ๊ฒฝ๋ณ์ ์ค์ (#144) * feat/OPS-393 : ํฐ์คํ ๋ฆฌ ํฌ๋กค๋ฌ ์์ฑ (#145) * fix/OPS-394: API ๋ฌธ์ํ ๋ฐ s3 ์ค๋ฅ ์์ #1 (#146) * [fix/OPS-394] ๋ฌธ์ํ ๋ฐ ์ค๋ฅ ์์ 3 (#148) * fix/OPS-394: API ๋ฌธ์ํ ๋ฐ s3 ์ค๋ฅ ์์ #3 * fix/OPS-394: API ๋ฌธ์ํ ๋ฐ s3 ์ค๋ฅ ์์ #4 * refactor/OPS-395: ๊ฒ์ ๋ก์ง ์์ . (#149) * fix: ๋ฒจ๋ก๊ทธ ํฌ๋กค๋ฌ ์์ฑ์ผ์ ํ์ฑ ์ด์ ํด๊ฒฐ (#111) * fix : ์์ฑ์ผ์ ํ์ฑ ์ด์ ํด๊ฒฐ * refactor: velog ํฌ๋กค๋ฌ ์ฐ์ ์์ ๋๊ฒ ์ค์ * fix: ๋ฒจ๋ก๊ทธ ํฌ๋กค๋ฌ ์์ธ ์ฒ๋ฆฌ ์ถ๊ฐ (HTML ์์ ์์ ์ ๋น ๋ฌธ์์ด, ์์ฑ์ผ ์์ ์ ๊ธฐ๋ณธ๊ฐ) * fix : docker ์คํ์ AWS ํ๊ฒฝ๋ณ์๊ฐ ์ ๊ฑฐ (#150) * fix: ์ค๋ฐ๊ฟ ๋ฌธ์ ๋ค ๊ณต๋ฐฑ ์ ๊ฑฐ ๋ฐ OPENAI API Key ์ด์ํ๊ฒฝ๊ฐ ๋ถ๋ฆฌ (#152) * refactor/OPS-396: n-gram analyzer ์ ์ฉ์ ํตํ ๊ฒ์ ๊ฒฐ๊ณผ ํฅ์ & OAuth2SuccessHandler ๋ก์ปฌ ํ๊ฒฝ ๋ถ๊ธฐ. (#154) * refactor/OPS-398: ์ธ์ฆ/์ธ๊ฐ ์ค๋ฅ ์์ (#155) * [Refactor/OPS-380] ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ๊ฐ์ (#156) * refactor : membership ์กฐํ ์ lazy loading์ ์ํ n+1 ๋ฌธ์ ๊ฐ์ * refactor : space์ member ๋ชฉ๋ก ์กฐํ ์ n+ 1 ๋ฌธ์ ํด๊ฒฐ --------- Co-authored-by: EpicFn <[email protected]> * Update README.md (#157) * Create DEV_GUIDE.md (#158) * Update README.md (#159) * fix/OPS-399: ๋ฆฌํ๋ ์ ํ ํฐ ์ด์ ์์ . (#160) * refactor/OPS-397 : ๊ฒ์ ์๊ตฌ์ฌํญ ๋ฐ์ (#161) * hotfix : ์คํ์ด์ค ์ด๋ฏธ์ง ์ ์ฅ ๋ก์ง ์์ (#163) * fix : ํ์ฅ์ ์ถ๊ฐํ๊ณ ๋ก๊ทธ ๋ฑ๋๋ก ๋ณ๊ฒฝ * fix : prefix ๋ก ๊ตฌ๋ถํ๋๋ก ๋ณ๊ฒฝ * fix : CI ๊ณผ์ ์ ๋๋ฏธ prefix ๊ฐ ์ถ๊ฐ * fix : ํ๊ฒฝ ํ์ผ์ prefix ์ถ๊ฐ * fix : ์คํ ์์ --------- Co-authored-by: EpicFn <[email protected]> * fix/OPS-399: ๋ฆฌํ๋ ์ ํ ํฐ ์ด์ ์์ #2 (#165) * fix : ์ด๋ฏธ์ง ๊ฒฝ๋ก ๋ฐ ๋ฐํ ํ์ ์์ (#166) Co-authored-by: EpicFn <[email protected]> * fix : Url ์์ (#167) Co-authored-by: EpicFn <[email protected]> * fix/OPS-400 : ์์ &์ญ์ ์๊ตฌ์ฌํญ ๋ฐ์ (#169) * fix: ์ด์์๋ฒ/ํ ์คํธ์๋ฒ vpc ๋ถ๋ฆฌ๋์ด ์์ด, rabbitmq host ๋ ๋ถ๋ฆฌ (#171) * fix : ๋ฉค๋ฒ ์ญ์ ์ ์ ๋ น ์คํ์ด์ค ์ญ์ ๋ก์ง ๊ตฌํ (#172) Co-authored-by: EpicFn <[email protected]> * Develop -> main ๋ณํฉ (#168) (#173) * [feat/OPS-262] GlobalExceptionHandler ์ค์ (#8) * feat: GlobalExceptionHandler ์งํ ์ฌํญ ์ ์ฅ. * feat/OPS-262 : GlobalExceptionHandler ์์ฑ ์๋ฃ. * [feat/OPS-126] Member ๋๋ฉ์ธ ๊ธฐ์ด ์ค๊ณ (#9) * feat/OPS-127 : Member ์ํฐํฐ ์์ฑ(ํ๋, ์ฐ๊ด ๊ด๊ณ, ์์ฑ์, ๋ฉ์๋) * feat/OPS-128 : MemberRepository ์์ฑ(name, email ๊ฒ์ ์ต์ ์ถ๊ฐ) * feat: GlobalExceptionHandler ์์ฑ์ ์ํ ์งํ ์ฌํญ ์ ์ฅ. * feat/OPS-129 : MemberService ์์ฑ(์กฐํ, ์์ฑ/์์ , ์ญ์ ) * feat/OPS-126 : Member ๋๋ฉ์ธ ์ค๊ณ ์๋ฃ. Service ํ ์คํธ ์ฝ๋ ์ถ๊ฐ * [Chore/OPS-264] ci ์ํฌํ๋ก์ฐ ๊ฐ์ (#10) * chore/OPS-264 : ci.yml ์์ * Update .github/workflows/ci.yml * Update .github/workflows/ci.yml --------- * Update .gitignore to exclude IntelliJ files (#11) Add .idea/ to .gitignore to exclude IntelliJ project files * feat/OPS-134 : ApiV1Controller ์์ฑ ์๋ฃ. (#12) * [chore/OPS-268] CI ์ํฌํ๋ก์ฐ ๊ฐ์ #2 (#15) ํ์ฌ ์์ ๋ก๊ทธ์ธ์ ์ฌ์ฉํ๋ ํน์ ๋ฏผ๊ฐํ ๊ฐ(JWT ํ ํฐ, ์์ client_id ๋ฑ)์ @value ์ด๋ ธํ ์ด์ ์ ํตํด ๋ฐ์์ค๊ณ ์์ต๋๋ค. ํ์ง๋ง ํด๋น ๋ฏผ๊ฐํ ๊ฐ์ ์ ์ฅํ yaml ํ์ผ์ ๋ ํฌ์งํ ๋ฆฌ์ ๋ฐ๋ก ์ฌ๋ฆด ์ ์๊ธฐ์, ๋ ํฌ์งํ ๋ฆฌ์ secrets์ ํด๋น ๊ฐ๋ค์ ์ ์ฅํด๋๊ณ , CI ์ํฌํ๋ก์ฐ์ ์ด ๊ฐ๋ค์ ์ฌ์ฉํด์ application-secrets.yml ํ์ผ์ ์์ฑํ๋ ๋ก์ง์ ์ถ๊ฐํ์ต๋๋ค. * [feat/OPS-155] ์์ ๋ก๊ทธ์ธ ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ(์นด์นด์ค) (#18) * feat/OPS-155 : ์์ ๋ก๊ทธ์ธ/ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ (์นด์นด์ค) ์๋ฃ. ์์ ์ฌํญ ๋ฐ์. * feat/OPS-155 : ์์ ๋ก๊ทธ์ธ/ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ (์นด์นด์ค) ์๋ฃ. ์์ ์ฌํญ ๋ฐ์ #2. * feat/OPS-155 : ์์ ๋ก๊ทธ์ธ/ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ (์นด์นด์ค) ์๋ฃ. ์์ ์ฌํญ ๋ฐ์ #3. * [chore/ops-130] Terraform์ ํ์ฉํด EC2 ์ธ์คํด์ค ์์ฑ ๋ฐ ์ค์ (#17) * chore/OPS-266 : EC2 ์ธ์คํด์ค ์์ฑ * chore/OPS-267 : VPC, IAM, SG ์ค์ * chore : ์๋ธ๋ท ์ค์ ์์ ๋ฐ nginx, mysql ๋ณผ๋ฅจ ๋ง์ดํธ ์ค์ ์ถ๊ฐ * chore : Dockerfile ์์ ๋ฐ EC2 ๋ณด์ ๊ทธ๋ฃน ์์ * chore : MYSQL ์ปจํ ์ด๋ ์คํ์ ์ด๊ธฐ DB ์ด๋ฆ ์ง์ ํ๋๋ก ์ค์ * fix/OPS-271 : SecurityConfig ๋ฐ Jwt ์ธ์ฆ ํํฐ ์์ (#19) * Feat/ops 209 be feat ํด๋ ์์ฑ (#21) * refactor: archive_id + name ๋ณตํฉ ์ ๋ํฌ ์ ์ฝ ์ถ๊ฐ * refactor: folder_id + title ๋ณตํฉ ์ ๋ํฌ ์ ์ฝ ์ถ๊ฐ * refactor: member_id, archive_id ๋จ์ผ ์ ๋ํฌ ์ ์ฝ ์ถ๊ฐ * refactor: ์ํฐํฐ ์ ์ฝ * feat/OPS-209-BE-feat-ํด๋-์์ฑ ์๋ฃ * feat/OPS-209-BE-feat-ํด๋-์์ฑ ์๋ฃ * fix : ์ปจ๋ฒค์ ํต์ผ (#22) * Feat/ops 210 be feat ํด๋ ์ญ์ (#23) * feat/OPS-210 : ํด๋ ์ญ์ ๊ตฌํ * [feat/OPS-151] llm ํ์ฉ ๋ฐ์ดํฐ ์ ์ ํ ๊ธฐ๋ฅ ๊ตฌํ (#27) - groq api๋ฅผ ์ด์ฉํ์ฌ ์์ฝ, ํ๊ทธ ์ถ์ถ ๊ธฐ๋ฅ ๊ตฌํ * [feat/OPS-158] ์์ ๋ก๊ทธ์ธ ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ(๊ตฌ๊ธ) (#28) * feat/OPS-158 : ์์ ๋ก๊ทธ์ธ(๊ตฌ๊ธ) ๊ตฌํ, JWT, Member, Auth ๋๋ฉ์ธ ๊ณ ๋ํ * feat/OPS-158 : ํ ์คํธ ์ผ์ด์ค ์์ . * fix/OPS-158 : template ์ถฉ๋ ํด๊ฒฐ. * fix/OPS-158 : @transactional import ์์ * feat/OPS-211 : ํด๋ ์ด๋ฆ ๋ณ๊ฒฝ ๊ตฌํ (#25) * feat/OPS-211 : ํด๋ ์ด๋ฆ ๋ณ๊ฒฝ ๊ตฌํ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * [chore/OPS-187] Terraform์ ํ์ฉํด RDS ์ธ์คํด์ค ์์ฑ ๋ฐ ์ค์ (#29) * chore/OPS-187 : Terraform์ ํ์ฉํด RDS ์ธ์คํด์ค ์์ฑ ๋ฐ ์ค์น * chore : RDS ์๋ธ๋ท ๊ทธ๋ฃน private์ผ๋ก ์์ * chore : AWS ๋ฆฌ์์ค ๋ค์ด๋ฐ ๊ท์น ์ ์ฉ * [feat] ์คํ์ด์ค ๋ฐ์ดํฐ ๊ด๋ฆฌ (#32) * new/OPS-222 : space controller, sevice, repository ๋น ์์ฑ # Conflicts: # src/main/java/org/tuna/zoopzoop/backend/global/initData/BaseInitData.java * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ์๋ํฌ์ธํธ ์ถ๊ฐ * new/OPS-222 : spaceControllerTest ํ์ผ ์ธํ * refactor/OPS-222 : ํ ์คํธ ํด๋์ค์ ๊ณต์ฉ ํํธ ์ถ์ ํด๋์ค๋ก ๋ถ๋ฆฌ * fix : ์ต์ ์ฌํญ ๋ฐ์ * fix/OPS-222 : ํ ์คํธ ์ฝ๋์์ ํ์ ๋ค๋ฅด๋ ๊ฑฐ ์์ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๊ตฌํ * feat/OPS-222 : space ๋จ์ ํธ๋ค๋ฌ, ์ปค์คํ ์๋ฌ ์์ฑ * fix/OPS-222 : controller ์์ฑ ํ ์คํธ ํต๊ณผ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๋ก์ง ์์ฑ * feat/OPS-222 : ์คํ์ด์ค ์ญ์ ๊ตฌํ * fix/OPS-222 : ํ ์คํธ ์ผ์ด์ค ํต๊ณผ * feat/OPS-245 : controller ๋จ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-245 : ์คํ์ด์ค ๋ช ๋ณ๊ฒฝ ๊ตฌํ * fix/OPS-244 : ์ด๋ฆ ๋ณ๊ฒฝ ์ saveAndFlush๋ก ์ฆ์ ๋ฐ์ * chore/OPS-222 : develop ์ต์ ์ฌํญ ๋ฐ์ * fix : ์ ์ฅ * fix/OPS-222 : globalExceptionHandler ์ปจ๋ฒค์ ํต์ผ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ controller ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-244 : membership ๊ด๋ฆฌ ๋น ์์ฑ * feat/OPS-244 : membership ์์ฑ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ฑ * fix : ํ ์คํธ ์ผ์ด์ค ๊ฐ ์ถฉ๋ ํด๊ฒฐ ์ค * fix : ์ต์ ์ฌํญ ๋ฐ์ * ์์์ ์ฅ * ์ด๊ธฐ ์ํ * fix : ๋ฏธ๋ด์ฑ ์ ์ฉ * feat/OPS-244 : ์คํ์ด์ค ๋ฉค๋ฒ ์ถ๊ฐ ๊ธฐ๋ฅ * fix : spaceControllerTest์ memberControllerTest ๊ฐ ์ถฉ๋ ํด๊ฒฐ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * chore/OPS-244 : ์ธ์ฆ ๊ด๋ จ ์ฝ๋ ์ฃผ์ ์ฒ๋ฆฌ * feat/OPS-270 : ์คํ์ด์ค ๋ก์ง์ ์ฌ์ฉ์ ์ ๋ณด ์ฒดํฌ ์ถ๊ฐ * feat/OPS-22 : ํ ์คํธ ์ผ์ด์ค์ WithUserDetails ๋ฐ์ * feat/OPS-222 : ์ธ์ฆ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * fix : ๋ถํ์ํ ์ฃผ์ ์ญ์ * new/OPS-222 : space controller, sevice, repository ๋น ์์ฑ # Conflicts: # src/main/java/org/tuna/zoopzoop/backend/global/initData/BaseInitData.java * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ์๋ํฌ์ธํธ ์ถ๊ฐ * new/OPS-222 : spaceControllerTest ํ์ผ ์ธํ * refactor/OPS-222 : ํ ์คํธ ํด๋์ค์ ๊ณต์ฉ ํํธ ์ถ์ ํด๋์ค๋ก ๋ถ๋ฆฌ * fix : ์ต์ ์ฌํญ ๋ฐ์ * fix/OPS-222 : ํ ์คํธ ์ฝ๋์์ ํ์ ๋ค๋ฅด๋ ๊ฑฐ ์์ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๊ตฌํ * feat/OPS-222 : space ๋จ์ ํธ๋ค๋ฌ, ์ปค์คํ ์๋ฌ ์์ฑ * fix/OPS-222 : controller ์์ฑ ํ ์คํธ ํต๊ณผ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๋ก์ง ์์ฑ * feat/OPS-222 : ์คํ์ด์ค ์ญ์ ๊ตฌํ * fix/OPS-222 : ํ ์คํธ ์ผ์ด์ค ํต๊ณผ * feat/OPS-245 : controller ๋จ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-245 : ์คํ์ด์ค ๋ช ๋ณ๊ฒฝ ๊ตฌํ * fix/OPS-244 : ์ด๋ฆ ๋ณ๊ฒฝ ์ saveAndFlush๋ก ์ฆ์ ๋ฐ์ * chore/OPS-222 : develop ์ต์ ์ฌํญ ๋ฐ์ * fix : ์ ์ฅ * fix/OPS-222 : globalExceptionHandler ์ปจ๋ฒค์ ํต์ผ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ controller ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-244 : membership ๊ด๋ฆฌ ๋น ์์ฑ * feat/OPS-244 : membership ์์ฑ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ฑ * fix : ํ ์คํธ ์ผ์ด์ค ๊ฐ ์ถฉ๋ ํด๊ฒฐ ์ค * fix : ์ต์ ์ฌํญ ๋ฐ์ * ์์์ ์ฅ * ์ด๊ธฐ ์ํ * fix : ๋ฏธ๋ด์ฑ ์ ์ฉ * feat/OPS-244 : ์คํ์ด์ค ๋ฉค๋ฒ ์ถ๊ฐ ๊ธฐ๋ฅ * fix : spaceControllerTest์ memberControllerTest ๊ฐ ์ถฉ๋ ํด๊ฒฐ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * chore/OPS-244 : ์ธ์ฆ ๊ด๋ จ ์ฝ๋ ์ฃผ์ ์ฒ๋ฆฌ * feat/OPS-270 : ์คํ์ด์ค ๋ก์ง์ ์ฌ์ฉ์ ์ ๋ณด ์ฒดํฌ ์ถ๊ฐ * feat/OPS-22 : ํ ์คํธ ์ผ์ด์ค์ WithUserDetails ๋ฐ์ * feat/OPS-222 : ์ธ์ฆ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * fix : ๋ถํ์ํ ์ฃผ์ ์ญ์ * fix : ๋ถํ์ํ ํ์ผ ์ญ์ --------- * Ops 272 be feat ์๋ฃ ์ด๋ฆ ์กฐํ (#31) * feat/OPS-211 : ํด๋ ์ด๋ฆ ๋ณ๊ฒฝ ๊ตฌํ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * feat/OPS-272 : ํด๋/ํ์ผ ์กฐํ ๊ตฌํ * refactor/OPS-272 : tag ์์ฑ์ ์ถ๊ฐ * feat/OPS-195 : ๋ด์ค ๋ชฉ๋ก ์กฐํ ๊ธฐ๋ฅ ๊ตฌํ(์ต์ ๋ด์ค, ํค์๋ ๊ธฐ๋ฐ). ์๋น์ค ํ ์คํธ ์ถ๊ฐ. (#33) * refactor/OPS-277 : default ํด๋ ์๋ ์์ฑ (#34) * [chore/OPS-278] Auth, Member, News ๋๋ฉ์ธ ๋ฌธ์ํ ๋ฐ ๊ณ ๋ํ. (#35) * chore/OPS-278 : Auth ๋๋ฉ์ธ ๋ฌธ์ํ ์๋ฃ & ApiV1MemberController ์ถ๊ฐ ๊ธฐ๋ฅ ๊ตฌํ. * refactor/OPS-278 : ApiV1MemberController ์ถ๊ฐ ์ฌํญ์ ๋ง๊ฒ ํ ์คํธ ์ถ๊ฐ ๊ตฌํ. * refactor/OPS-278 : Member ์์ฑ ์, ๋๋คํ UUID์ ์ 5๊ธ์๋ฅผ ํ๊ทธ๋ก ์ฌ์ฉํ๋๋ก ๋ณ๊ฒฝ. * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- * refactor/OPS-283 : datasource ์ํฐํฐ ์์ (#39) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * [feat/OPS-175] ์น ํฌ๋กค๋ง ๋ฐ์ดํฐ ์ ์ ํ ๊ธฐ๋ฅ ๊ตฌํ (#41) * feat/OPS-175 : ์น ํฌ๋กค๋ง ๋ฐ์ดํฐ ์ ์ ํ ๊ธฐ๋ฅ ๊ตฌํ * [refactor/OPS-287] News ๋๋ฉ์ธ ๊ณ ๋ํ (#42) * refactor/OPS-287 : newsSearch ๋ฉ์๋ ๋ก์ง ๋ณ๊ฒฝ ๋ฐ ์ผ๋ถ API ๋ฌธ์ํ. * refactor/OPS-287 : NewsServiceTest API๋ฅผ ํธ์ถํ๋ ๋ฐฉ์์ผ๋ก ๋ณ๊ฒฝ. * Ops 226 be feat ์๋ฃ ๋ฑ๋ก (#44) * refactor/OPS-283 : datasource ์ํฐํฐ ์์ * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * feat/OPS-226 : ์๋ฃ ๋ฑ๋ก ๊ตฌํ * refactor/OPS-226 : ๋ฉ์๋ ๋ช ์์ --------- * Ops 215 be feat ์๋ฃ ์ญ์ (#46) * refactor/OPS-283 : datasource ์ํฐํฐ ์์ * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * feat/OPS-226 : ์๋ฃ ๋ฑ๋ก ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ --------- * [feat/OPS-293] LiveBlocks๋ฅผ ์ํ React-flow ๋ฐ์ดํฐ ๊ด๋ฆฌ ๋๋ฉ์ธ ์ค๊ณ ์๋ฃ. ํ ์คํธ ์ถ๊ฐ. (#47) * feat/OPS-293 : LiveBlocks๋ฅผ ์ํ React-flow ๋ฐ์ดํฐ ๊ด๋ฆฌ ๋๋ฉ์ธ ์ค๊ณ ์๋ฃ. ํ ์คํธ ์ถ๊ฐ. * feat/OPS-293 : folder ํ ์คํธ์ @transactional ์ถ๊ฐ. * feat/OPS-293 : MemberServiceTest ์์ #1 * feat/OPS-293 : MemberServiceTest ์์ #2 * feat/OPS-293 : Folder ํ ์คํธ์ ActiveProfile(test) ์ถ๊ฐ. * feat/OPS-293 : ํ ์คํธ์ ๋ฌด๊ฒฐ์ฑ ๊ฒ์ฆ์ ์ํ @afterall, @AfterEach ์ถ๊ฐ. * feat/OPS-293 : ์ผ๋ถ ์์ . * feat/OPS-293 : ์ง์ง ๋ง์ง๋ง ์์ . * [chore/ops-132] CI/CD ํ์ดํ๋ผ์ธ ๊ตฌ์ถ (#43) * chore/OPS-133 : CI ํ์ดํ๋ผ์ธ ๊ตฌ์ถ * chore: ํ ์คํธ/์ด์ ํ๊ฒฝ์ฉ GitHub Actions Terraform ์๋ ์ธํ๋ผ ์ ์ฉ ์ํฌํ๋ก์ฐ ์ถ๊ฐ * chore : ํ๊ฒฝ๋ณ์๋ก test/prod ์๋ฒ ๋ถ๋ฆฌ ๊ฐ๋ฅํ๋๋ก ์ค์ * chore/OPS-135 : CD ์ํฌํ๋ก์ฐ ์ถ๊ฐ * chore: CI ํ CD ์คํ๋๋๋ก ์ค์ * chore : CI ์ํฌํ๋ก์ฐ job ๋ถ๋ฆฌ(ํ ์คํธ,๋น๋/๋์ปค ๋น๋,ghcr push) * chore : docker build jobs์์ checkout ๋จ๊ณ ์ถ๊ฐ * chore: CI ์ํฌํ๋ก์ฐ job ๊ตฌ๋ถ ์์ฐ * chore : develop/main ๋ธ๋์น์ ๋ฐ๋ผ CI/CD ์ํฌํ๋ก์ฐ ๋ถ๋ฆฌ * chore : Spring Boot Acutator ์์กด์ฑ ์ถ๊ฐ * chore: Actions์์ SSH ์ ์ ํ docker ์คํ ๊ถํ ๊ฐ๋๋ก ์ค์ * chore: ์ปจํ ์ด๋ ์คํ ๋ก๊ทธ ํฐ๋ฏธ๋์ ์ถ๋ ฅ ์ค์ * chore : ํฌ์ค์ฒดํฌ ์ค์ * chore: secrets ์ง์ ssh ํ๊ฒฝ ๋ณ์๋ก ์ ๋ฌ * chore: ํ๊ฒฝ๋ณ์ ์ง์ docker run์ ๋ฃ๊ธฐ * chore: spdocker run ์์ ring profile ์ ๊ฑฐ * chore: nginx ์ค์ * chore: test-cd ์์ * chore: test-cd ์์ 2 * chore: ghcr ๋ก๊ทธ์ธ ํ ํฐ ์์ * chore: ๋์ปค ์ด๋ฏธ์ง pull ์ด๋ฆ ์์ * chore: ssh ๋ด ์์ ํ ghcr ๋ก๊ทธ์ธ * chore : ์ด๋ฏธ pullํ ์ด๋ฏธ์ง์ run ์ด๋ฏธ์ง ์ด๋ฆ ์ผ์น์ํค๊ธฐ * chore: mysql driver ์์กด์ฑ ์ถ๊ฐ * chore : ํฌ์ค์ฒดํฌ ์์ฒญ ์คํ๋ง ์ํ๋ฆฌํฐ ํํฐ์ ๊ฑธ๋ฆฌ์ง ์๋๋ก ์ค์ * chore: nginx ํฌํธ ์ค์์นญ ์ค์ * chore: nginx ํฌํธ ์ค์์นญ ์ค์ ์์ * chore: nginx ํฌํธ ์ค์์นญ ์ค์ ์์ 2 * chore: ์ด์์๋ฒ CD ์ํฌํ๋ก์ฐ ์์ * chore : prod-server ์ํฌํ๋ก์ฐ ํ์ฑํ ๊ฒฝ๋ก ์ค์ * chore : test commit ๋์ค์ ์ง์ฐ๊ธฐ * [Feat/OPS-214] ์คํ์ด์ค ๋ฉค๋ฒ ๊ด๋ฆฌ (#50) * feat/OPS-227 : ์คํ์ด์ค ๋ฉค๋ฒ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-227 : ์คํ์ด์ค ๋ชฉ๋ก ๋ฐํ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-251 : ๊ถํ ๋ณ๊ฒฝ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-214 : ๊ถํ ๋ณ๊ฒฝ ์๋ํฌ์ธํธ ๊ตฌํ * fix/OPS-214 : ๋จ์ ๋ฉ์ธ์ง ์ค๋ฅ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-214 : ๋ก์ง ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-251 : globalExceptionHandler์ ์ญ์ง๋ ฌํ ์คํจ ์๋ฌ ์ถ๊ฐ * refactor/OPS-214 : ๋น์ฆ๋์ค ๋ก์ง์ ์๋น์ค ๊ณ์ธต์ ์ผ์ * feat/OPS-231 : ์คํ์ด์ค ์ด๋ ์ปจํธ๋กค๋ฌ ํ ์คํธ์ผ์ด์ค ์์ฑ * feat/OPS-231 : ์คํ์ด์ค ์ด๋ ๋ก์ง ์์ฑ * feat/OPS-231 : ์คํ์ด์ค์ด๋ ์๋น์ค ๋น ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * feat/OPS-228 : ํ์ ํด์ถ ์ปจํธ๋กค๋ฌ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feeat/OPS-229 : ํ์ ํด์ถ ๊ตฌํ ์๋ฃ * fix : ๊ธฐ์กด ํ ์คํธ ์ผ์ด์ค ์ผ๊ด์ฑ ์๊ฒ ์์ * feat : ๋ฉค๋ฒ ํด์ถ ์๋น์ค ํ ์คํธ ์ฝ๋ ์์ฑ * refactor : DTO ํจํค์ง ๋ณ๊ฒฝ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ์ปจํธ๋กค๋ฌ ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ๋ก์ง ์์ฑ * refactor : space ๋๋ฉ์ธ dto ํจํค์ง ๋ณ๊ฒฝ * feat/OPS-227 : ์คํ์ด์ค ๋ฉค๋ฒ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-227 : ์คํ์ด์ค ๋ชฉ๋ก ๋ฐํ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-251 : ๊ถํ ๋ณ๊ฒฝ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-214 : ๊ถํ ๋ณ๊ฒฝ ์๋ํฌ์ธํธ ๊ตฌํ * fix/OPS-214 : ๋จ์ ๋ฉ์ธ์ง ์ค๋ฅ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-214 : ๋ก์ง ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-251 : globalExceptionHandler์ ์ญ์ง๋ ฌํ ์คํจ ์๋ฌ ์ถ๊ฐ * refactor/OPS-214 : ๋น์ฆ๋์ค ๋ก์ง์ ์๋น์ค ๊ณ์ธต์ ์ผ์ * feat/OPS-231 : ์คํ์ด์ค ์ด๋ ์ปจํธ๋กค๋ฌ ํ ์คํธ์ผ์ด์ค ์์ฑ * feat : ์ต์ ์ฌํญ ๋ฐ์ * feat/OPS-231 : ์คํ์ด์ค์ด๋ ์๋น์ค ๋น ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * feat/OPS-228 : ํ์ ํด์ถ ์ปจํธ๋กค๋ฌ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feeat/OPS-229 : ํ์ ํด์ถ ๊ตฌํ ์๋ฃ * fix : ๊ธฐ์กด ํ ์คํธ ์ผ์ด์ค ์ผ๊ด์ฑ ์๊ฒ ์์ * feat : ๋ฉค๋ฒ ํด์ถ ์๋น์ค ํ ์คํธ ์ฝ๋ ์์ฑ * refactor : DTO ํจํค์ง ๋ณ๊ฒฝ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ์ปจํธ๋กค๋ฌ ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ๋ก์ง ์์ฑ * refactor : space ๋๋ฉ์ธ dto ํจํค์ง ๋ณ๊ฒฝ --------- * refactor/OPS-308 : ๋๋ฉ์ธ ๋ถ๋ฆฌ & CI ์ํฌํ๋ก์ฐ์ application-secrets-server.yml ์ถ๊ฐ. (#52) * Ops 255 be feat ์๋ฃ ์์ (#54) * refactor/OPS-283 : datasource ์ํฐํฐ ์์ * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * feat/OPS-226 : ์๋ฃ ๋ฑ๋ก ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-255 : ์๋ฃ ์ด๋ ๋ฐ ์์ ๊ตฌํ --------- * feat/OPS-289 : dataprocessor ์๋น์ค ์์ฑ (#59) * fix/OPS-318 : proxy host ์ค์์นญรฌ๏ฟฝ ssl ์ธ์ฆ์ ์ ์ง (#60) * [refactor/OPS-310] redirect url ๋ณ๊ฒฝ (#53) * refactor/OPS-310 : redirect-url ๋ณ๊ฒฝ. * refactor/OPS-310 : ์์ ์์ . * refactor/OPS-310 : ๋ ํ๋์ ์์ ์์ . * refactor/OPS-310 : ํฐ ์์ . * refactor/OPS-310 : ํ ์คํธ * refactor/OPS-310 : ์์ฒญ ์ฌํญ ๋ฐ์. * refactor/OPS-310 : ์์ฒญ ์ฌํญ ๋ฐ์ #2 * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ (#64) * [refactor/OPS-323] News API ์กฐํ ๋ก์ง ์์ . (#65) * ๋ฐฐํฌ ํ ์คํธ #2 * ๋ก์ง ์์ ํ ์คํธ * ๋ก์ง ์์ ํ ์คํธ #2 * refactor/OPS-322 : source ์นผ๋ผ๋ช ์์ (#68) * refactor/OPS-322 : source ์นผ๋ผ๋ช ์์ * refactor/OPS-322 : source ์นผ๋ผ๋ช ์์ * feat/OPS-321 : dataProcessorService์์ ์์ฝ ๋ก์ง ์์ฑ (#69) * [fix/OPS-317] CI/CD ํ์ดํ๋ผ์ธ ์ด๋ฒคํธ ๋ถ๋ฆฌ (#66) * fix : prod-server nginx ์ ๋ณด ์ถ๋ ฅ ์ ๊ฑฐ * fix : prod-server CD ์ํฌํ๋ก์ฐ main์ push๋ ๋ ์คํ๋๋๋ก ์์ * fix : test-server CI๋ pr์ develop์ ์คํ, CD๋ push๋ ๋ ์คํ * fix : test-server CI ์ํฌํ๋ก์ฐ์์ CD ๋ถ๋ถ ์ ๊ฑฐ * chore : ๋น๋์ aws๊ด๋ จ ์ ๋ณด application-secret.yml์ ๋ค์ด๊ฐ๋๋ก ์ค์ (#73) * chore : S3 ์ฌ์ฉ์ ์ํด ๋น๋์ AWS ์ ๋ณด application-secrets.yml์ ์ถ๊ฐ๋๋๋ก ์ค์ * chore : ์ญํ ์ S3 ์ ๊ทผ ์ ์ฑ ๋ถ์ฐฉ ํ๋๋ก ์ค์ * chore : รฃyml์ ์ถ๊ฐ์ ๋ณด ๋ฃ๋๋ก ์ค์ * [Feat/OPS-275] ์คํ์ด์ค ์ธ๋ค์ผ ์ด๋ฏธ์ง ์ ์ฅ (#71) * chore : S3 ํ๊ฒฝ ์ค์ * feat : S3Service ๊ตฌ์ฑ * chore : multipart ๋ฐ์ดํฐ ํฌ๊ธฐ ์ค์ * feat : S3 ์ ๋ก๋ ํ ์คํธ์ฉ ์๋ํฌ์ธํธ ์์ฑ * feat : S3 ์ฐ๋ ์๋ฃ * feat : space entity์ imageUrl ํญ๋ชฉ ์ถ๊ฐ * feat : ์ธ๋ค์ผ ์บก์ฒ ํ ์คํธ์ฉ * feat : ์ธ๋ค์ผ ์ดฌ์ ํ ์คํธ ์๋ํฌ์ธํธ ์์ฑ * feat : ์คํ์ด์ค ์ธ๋ค์ผ ๊ฐฑ์ API ์์ฑ * feat : ์คํ์ด์ค ์ด๋ฏธ์ง ๊ฐฑ์ ๊ธฐ๋ฅ ์์ฑ * feat : ์คํ์ด์ค ๋ชฉ๋ก ๋ฐํ ์ ์ธ๋ค์ผ url ๊ฐ์ด ๋ฐํ * feat : ์คํ์ด์ค ๋จ๊ฑด ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat : ์คํ์ด์ค ๋จ๊ฑด ์กฐํ ๊ตฌํ * feat : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ํ์ด์ง ๊ธฐ๋ฅ ์ถ๊ฐ --------- * [feat/OPS-324] ํฌ๋กฌ ํ์ฅ ํ๋ก๊ทธ๋จ ์์ ๋ก๊ทธ์ธ ๋ถ๊ธฐ & ์์ ๋ก๊ทธ์ธ ํ ์คํธ API ์ถ๊ฐ. (#70) * feat/OPS-324 : ํ์ฅ ํ๋ก๊ทธ๋จ ๋ถ๊ธฐ ๋ฐ ์์ ๋ก๊ทธ์ธ ํ ์คํธ API ์ถ๊ฐ. * feat/OPS-324 : ํ ์คํธ ๋ก์ง ์ผ๋ถ ์์ . * feat/OPS-324 : ํ ์คํธ ๋ก์ง ์ผ๋ถ ์์ . #2 * feat/OPS-324 : ํ ์คํธ ์๋ฃ, ํ ์คํธ ์ฝ๋ ์ ๊ฑฐ. * feat/OPS-324 : ๋ก๊ทธ์ธ ๋ถ๊ธฐ ์์ . * feat/OPS-324 : state ์ ๋ณด๋ฅผ ์ ์ฅํ๋ resolver ์ถ๊ฐ. * feat/OPS-324 : session ๋ฑ๋ก์ ์ํ OAuth2LoginSourceFilter ํด๋์ค ์ถ๊ฐ. * feat/OPS-324 : ํด๊ฒฐ * fix : ci ์ secrets ์์ S3 ๊ด๋ จ ์ํฌ๋ฆฟ ๊ฐ ์ญ์ ํ๋๋ก ๋ณ๊ฒฝ(๋ฒํท๋ช ์ ์ธ) (#74) * fix : ci ์ secrets ์์ S3 ๊ด๋ จ ์ํฌ๋ฆฟ ๊ฐ ์ญ์ ํ๋๋ก ๋ณ๊ฒฝ(๋ฒํท๋ช ์ ์ธ) * fix : CI ์คํ ์์ * fix : build ๋จ๊ณ์์ testest๋ฅผ ์ํํ์ง ์๋๋ก ๋ณ๊ฒฝ --------- * [feat/OPS-198] ์์นด์ด๋ธ ์ ๋ณด๋ก ๋ด์ค ๋ชฉ๋ก ์กฐํ (#75) * feat/OPS-198 : ์์นด์ด๋ธ ๊ธฐ๋ฐ ๋ด์ค ์กฐํ ๊ตฌํ. * feat/OPS-198 : ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ. * feat/OPS-265 : LLM-ํ์ฉ-๋ฐ์ดํฐ-์ ์ ํ-์-๊ธฐ์กด-์์นด์ด๋ธ์-ํ๊ทธ-์ฐ๋ (#77) * refactor/OPS-319: ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ (#76) * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * fix : SpringDoc๊ณผ Spring AI ๊ฐ ์์กด์ฑ ์ถฉ๋ ํด๊ฒฐ (#79) * [Feat/OPS-327] ์๋ฃ ๋ฑ๋ก llm ์ฐ๋ (#78) * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-327 : ์๋ฃ ๋ฑ๋ก LLM ์ฐ๋ * [feat/OPS-328] ์ธ์ฆ/์ธ๊ฐ ๋ก์ง ๋ณ๊ฒฝ (#80) * feat/OPS-328 : RefreshToken์ ์๋ฒ์์ ์ ์ฅํ๋๋ก ๋ณ๊ฒฝ. API ์ผ๋ถ ์์ . * feat/OPS-328 : ํ์ฅ ํ๋ก๊ทธ๋จ ๋ก๊ทธ์ธ ๋ฉ์๋ ์ถ๊ฐ ๋ฐ ๋ฐ์ดํฐ ์บ์ฑ ๋ฉ์๋ ์ถ๊ฐ. * [refactor/OPS-337] ์๊ตฌ์ฌํญ ๋ฐ์ ๋ฐ ์ผ๋ถ ๋ก์ง ์์ . (#81) * refactor/OPS-337 : ํ๋ก ํธ ์๊ตฌ์ฌํญ ๋ฐ์ ๋ฐ ์๋ฌ ์์ . * refactor/OPS-337 : ํ ์คํธ ์ผ์ด์ค ์์ . * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ (#82) * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : mock ์ถ๊ฐ๋ก ์ธํ testcase ์์ * [feat/OPS-338] ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ (#83) * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : mock ์ถ๊ฐ๋ก ์ธํ testcase ์์ * refactor/OPS-338 : Dev ํ ํฐ ๋ฐ๊ธ ์ปจํธ๋กค๋ฌ ์ถ๊ฐ * [Feat/OPS-326] ๋์๋ณด๋ ๋ฐ์ดํฐ ์ ์ฅ ์ฒด๊ณ ๊ตฌ์ถ (#85) * refactor : graph ๋๋ฉ์ธ์ dashboard ๋๋ฉ์ธ์ผ๋ก ์์ , dashboard ์ํฐํฐ ์์ฑ * feat : ์คํ์ด์ค ๋จ๊ฑด ์กฐํ ์ ๋์๋ณด๋ id๋ ํจ๊ป ๋ฐํ * refactor : API ๋ช ๋ณ๊ฒฝ * dashboard ๊ธฐ๋ฐ์ผ๋ก ์ ์ฅ/์กฐํ ๋๋๋ก ๋ณ๊ฒฝ * refactor : ํ ์คํธ ์ฝ๋ ์์ * fix : ๋ฐํ ๋ฉ์ธ์ง ์์ * feat : ์๋ช ๊ฒ์ฆ ๋ก์ง ๊ตฌํ * refactor : signature ์๋น์ค ๋ถ๋ฆฌ * fix : ์คํ ์์ * fix : CI ํ์ดํ๋ผ์ธ ์์ --------- * [feat/OPS-329] Sentry๋ฅผ ํตํ ๋ชจ๋ํฐ๋ง ํ๊ฒฝ ๊ตฌ์ถ. (#86) * feat/OPS-329 : Sentry๋ฅผ ํตํ ๋ชจ๋ํฐ๋ง ํ๊ฒฝ ๊ตฌ์ถ. * feat/OPS-329: ์ถ๊ฐ๋ก ํ๋ก ํธ ์๊ตฌ ์ฌํญ ๋ฐ์. * refactor/OPS-353 : ๋ถ๋ฆฌ ์๋ฃ. (#87) * [refactor/OPS-354] ํ ์คํธ ์ผ์ด์ค ์ฌ์ฉ ํ๋กํ ๋ณ๊ฒฝ. (#88) * refactor/OPS-354 : ํ ์คํธ ์ผ์ด์ค ์ฌ์ฉ ํ๋กํ ๋ณ๊ฒฝ. * refactor/OPS-354 : ์ด๋๋ ์๋ผ? * refactor/OPS-355 : ์๊ตฌ ์ฌํญ ๋ฐ์. (#91) * feat/OPS-358: Redis ์์กด์ฑ ์ถ๊ฐ ๋ฐ RedisConfig ์ค์ ์๋ฃ. AuthResultData ์ง๋ ฌํ ๋ฐ AuthResult ํด๋์ค์ TTL ๋์ . (#92) * feat/OPS-356 : ๋ค์ด๋ฒ ๋ธ๋ก๊ทธ ํฌ๋กค๋ฌ ์์ฑ (#93) * [feat/OPS-252] ์กฐ๊ฑด๋ณ ์๋ฃ ๊ฒ์ (#89) * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-327 : ์๋ฃ ๋ฑ๋ก LLM ์ฐ๋ * refactor/OPS-252 : ์กฐ๊ฑด๋ณ ์๋ฃ ๊ฒ์ ๊ตฌํ * refactor/OPS-252 : ์กฐ๊ฑด๋ณ ์๋ฃ ๊ฒ์ * fix : ์คํ์ด์ค, ์ฌ์ฉ์ ๋ชฉ๋ก ๋ฐํ ์ ํญ์ id ์ค๋ฆ์ฐจ์ ์ ๋ ฌ (#94) * IllegalStateException(๋์์ฑ ๋ฌธ์ )๊ด๋ จ ์ฒ๋ฆฌ ๋ฉ์๋ ์ถ๊ฐ. (#95) * [fix/OPS-362] ์๊ตฌ ์ฌํญ ๋ฐ์ (#96) * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์. * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#2 * [feat/OPS-341]โฆ
Kimgooner
added a commit
that referenced
this pull request
Oct 14, 2025
* [feat/OPS-262] GlobalExceptionHandler ์ค์ (#8) * feat: GlobalExceptionHandler ์งํ ์ฌํญ ์ ์ฅ. * feat/OPS-262 : GlobalExceptionHandler ์์ฑ ์๋ฃ. * [feat/OPS-126] Member ๋๋ฉ์ธ ๊ธฐ์ด ์ค๊ณ (#9) * feat/OPS-127 : Member ์ํฐํฐ ์์ฑ(ํ๋, ์ฐ๊ด ๊ด๊ณ, ์์ฑ์, ๋ฉ์๋) * feat/OPS-128 : MemberRepository ์์ฑ(name, email ๊ฒ์ ์ต์ ์ถ๊ฐ) * feat: GlobalExceptionHandler ์์ฑ์ ์ํ ์งํ ์ฌํญ ์ ์ฅ. * feat/OPS-129 : MemberService ์์ฑ(์กฐํ, ์์ฑ/์์ , ์ญ์ ) * feat/OPS-126 : Member ๋๋ฉ์ธ ์ค๊ณ ์๋ฃ. Service ํ ์คํธ ์ฝ๋ ์ถ๊ฐ * [Chore/OPS-264] ci ์ํฌํ๋ก์ฐ ๊ฐ์ (#10) * chore/OPS-264 : ci.yml ์์ * Update .github/workflows/ci.yml Co-authored-by: Copilot <[email protected]> * Update .github/workflows/ci.yml Co-authored-by: Copilot <[email protected]> --------- Co-authored-by: Copilot <[email protected]> * Update .gitignore to exclude IntelliJ files (#11) Add .idea/ to .gitignore to exclude IntelliJ project files * feat/OPS-134 : ApiV1Controller ์์ฑ ์๋ฃ. (#12) * [chore/OPS-268] CI ์ํฌํ๋ก์ฐ ๊ฐ์ #2 (#15) ํ์ฌ ์์ ๋ก๊ทธ์ธ์ ์ฌ์ฉํ๋ ํน์ ๋ฏผ๊ฐํ ๊ฐ(JWT ํ ํฐ, ์์ client_id ๋ฑ)์ @value ์ด๋ ธํ ์ด์ ์ ํตํด ๋ฐ์์ค๊ณ ์์ต๋๋ค. ํ์ง๋ง ํด๋น ๋ฏผ๊ฐํ ๊ฐ์ ์ ์ฅํ yaml ํ์ผ์ ๋ ํฌ์งํ ๋ฆฌ์ ๋ฐ๋ก ์ฌ๋ฆด ์ ์๊ธฐ์, ๋ ํฌ์งํ ๋ฆฌ์ secrets์ ํด๋น ๊ฐ๋ค์ ์ ์ฅํด๋๊ณ , CI ์ํฌํ๋ก์ฐ์ ์ด ๊ฐ๋ค์ ์ฌ์ฉํด์ application-secrets.yml ํ์ผ์ ์์ฑํ๋ ๋ก์ง์ ์ถ๊ฐํ์ต๋๋ค. * [feat/OPS-155] ์์ ๋ก๊ทธ์ธ ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ(์นด์นด์ค) (#18) * feat/OPS-155 : ์์ ๋ก๊ทธ์ธ/ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ (์นด์นด์ค) ์๋ฃ. ์์ ์ฌํญ ๋ฐ์. * feat/OPS-155 : ์์ ๋ก๊ทธ์ธ/ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ (์นด์นด์ค) ์๋ฃ. ์์ ์ฌํญ ๋ฐ์ #2. * feat/OPS-155 : ์์ ๋ก๊ทธ์ธ/ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ (์นด์นด์ค) ์๋ฃ. ์์ ์ฌํญ ๋ฐ์ #3. * [chore/ops-130] Terraform์ ํ์ฉํด EC2 ์ธ์คํด์ค ์์ฑ ๋ฐ ์ค์ (#17) * chore/OPS-266 : EC2 ์ธ์คํด์ค ์์ฑ * chore/OPS-267 : VPC, IAM, SG ์ค์ * chore : ์๋ธ๋ท ์ค์ ์์ ๋ฐ nginx, mysql ๋ณผ๋ฅจ ๋ง์ดํธ ์ค์ ์ถ๊ฐ * chore : Dockerfile ์์ ๋ฐ EC2 ๋ณด์ ๊ทธ๋ฃน ์์ * chore : MYSQL ์ปจํ ์ด๋ ์คํ์ ์ด๊ธฐ DB ์ด๋ฆ ์ง์ ํ๋๋ก ์ค์ * fix/OPS-271 : SecurityConfig ๋ฐ Jwt ์ธ์ฆ ํํฐ ์์ (#19) * Feat/ops 209 be feat ํด๋ ์์ฑ (#21) * refactor: archive_id + name ๋ณตํฉ ์ ๋ํฌ ์ ์ฝ ์ถ๊ฐ * refactor: folder_id + title ๋ณตํฉ ์ ๋ํฌ ์ ์ฝ ์ถ๊ฐ * refactor: member_id, archive_id ๋จ์ผ ์ ๋ํฌ ์ ์ฝ ์ถ๊ฐ * refactor: ์ํฐํฐ ์ ์ฝ * feat/OPS-209-BE-feat-ํด๋-์์ฑ ์๋ฃ * feat/OPS-209-BE-feat-ํด๋-์์ฑ ์๋ฃ * fix : ์ปจ๋ฒค์ ํต์ผ (#22) Co-authored-by: EpicFn <[email protected]> * Feat/ops 210 be feat ํด๋ ์ญ์ (#23) * feat/OPS-210 : ํด๋ ์ญ์ ๊ตฌํ * [feat/OPS-151] llm ํ์ฉ ๋ฐ์ดํฐ ์ ์ ํ ๊ธฐ๋ฅ ๊ตฌํ (#27) - groq api๋ฅผ ์ด์ฉํ์ฌ ์์ฝ, ํ๊ทธ ์ถ์ถ ๊ธฐ๋ฅ ๊ตฌํ * [feat/OPS-158] ์์ ๋ก๊ทธ์ธ ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ(๊ตฌ๊ธ) (#28) * feat/OPS-158 : ์์ ๋ก๊ทธ์ธ(๊ตฌ๊ธ) ๊ตฌํ, JWT, Member, Auth ๋๋ฉ์ธ ๊ณ ๋ํ * feat/OPS-158 : ํ ์คํธ ์ผ์ด์ค ์์ . * fix/OPS-158 : template ์ถฉ๋ ํด๊ฒฐ. * fix/OPS-158 : @transactional import ์์ * feat/OPS-211 : ํด๋ ์ด๋ฆ ๋ณ๊ฒฝ ๊ตฌํ (#25) * feat/OPS-211 : ํด๋ ์ด๋ฆ ๋ณ๊ฒฝ ๊ตฌํ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * [chore/OPS-187] Terraform์ ํ์ฉํด RDS ์ธ์คํด์ค ์์ฑ ๋ฐ ์ค์ (#29) * chore/OPS-187 : Terraform์ ํ์ฉํด RDS ์ธ์คํด์ค ์์ฑ ๋ฐ ์ค์น * chore : RDS ์๋ธ๋ท ๊ทธ๋ฃน private์ผ๋ก ์์ * chore : AWS ๋ฆฌ์์ค ๋ค์ด๋ฐ ๊ท์น ์ ์ฉ * [feat] ์คํ์ด์ค ๋ฐ์ดํฐ ๊ด๋ฆฌ (#32) * new/OPS-222 : space controller, sevice, repository ๋น ์์ฑ # Conflicts: # src/main/java/org/tuna/zoopzoop/backend/global/initData/BaseInitData.java * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ์๋ํฌ์ธํธ ์ถ๊ฐ * new/OPS-222 : spaceControllerTest ํ์ผ ์ธํ * refactor/OPS-222 : ํ ์คํธ ํด๋์ค์ ๊ณต์ฉ ํํธ ์ถ์ ํด๋์ค๋ก ๋ถ๋ฆฌ * fix : ์ต์ ์ฌํญ ๋ฐ์ * fix/OPS-222 : ํ ์คํธ ์ฝ๋์์ ํ์ ๋ค๋ฅด๋ ๊ฑฐ ์์ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๊ตฌํ * feat/OPS-222 : space ๋จ์ ํธ๋ค๋ฌ, ์ปค์คํ ์๋ฌ ์์ฑ * fix/OPS-222 : controller ์์ฑ ํ ์คํธ ํต๊ณผ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๋ก์ง ์์ฑ * feat/OPS-222 : ์คํ์ด์ค ์ญ์ ๊ตฌํ * fix/OPS-222 : ํ ์คํธ ์ผ์ด์ค ํต๊ณผ * feat/OPS-245 : controller ๋จ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-245 : ์คํ์ด์ค ๋ช ๋ณ๊ฒฝ ๊ตฌํ * fix/OPS-244 : ์ด๋ฆ ๋ณ๊ฒฝ ์ saveAndFlush๋ก ์ฆ์ ๋ฐ์ * chore/OPS-222 : develop ์ต์ ์ฌํญ ๋ฐ์ * fix : ์ ์ฅ * fix/OPS-222 : globalExceptionHandler ์ปจ๋ฒค์ ํต์ผ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ controller ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-244 : membership ๊ด๋ฆฌ ๋น ์์ฑ * feat/OPS-244 : membership ์์ฑ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ฑ * fix : ํ ์คํธ ์ผ์ด์ค ๊ฐ ์ถฉ๋ ํด๊ฒฐ ์ค * fix : ์ต์ ์ฌํญ ๋ฐ์ * ์์์ ์ฅ * ์ด๊ธฐ ์ํ * fix : ๋ฏธ๋ด์ฑ ์ ์ฉ * feat/OPS-244 : ์คํ์ด์ค ๋ฉค๋ฒ ์ถ๊ฐ ๊ธฐ๋ฅ * fix : spaceControllerTest์ memberControllerTest ๊ฐ ์ถฉ๋ ํด๊ฒฐ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * chore/OPS-244 : ์ธ์ฆ ๊ด๋ จ ์ฝ๋ ์ฃผ์ ์ฒ๋ฆฌ * feat/OPS-270 : ์คํ์ด์ค ๋ก์ง์ ์ฌ์ฉ์ ์ ๋ณด ์ฒดํฌ ์ถ๊ฐ * feat/OPS-22 : ํ ์คํธ ์ผ์ด์ค์ WithUserDetails ๋ฐ์ * feat/OPS-222 : ์ธ์ฆ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * fix : ๋ถํ์ํ ์ฃผ์ ์ญ์ * new/OPS-222 : space controller, sevice, repository ๋น ์์ฑ # Conflicts: # src/main/java/org/tuna/zoopzoop/backend/global/initData/BaseInitData.java * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ์๋ํฌ์ธํธ ์ถ๊ฐ * new/OPS-222 : spaceControllerTest ํ์ผ ์ธํ * refactor/OPS-222 : ํ ์คํธ ํด๋์ค์ ๊ณต์ฉ ํํธ ์ถ์ ํด๋์ค๋ก ๋ถ๋ฆฌ * fix : ์ต์ ์ฌํญ ๋ฐ์ * fix/OPS-222 : ํ ์คํธ ์ฝ๋์์ ํ์ ๋ค๋ฅด๋ ๊ฑฐ ์์ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๊ตฌํ * feat/OPS-222 : space ๋จ์ ํธ๋ค๋ฌ, ์ปค์คํ ์๋ฌ ์์ฑ * fix/OPS-222 : controller ์์ฑ ํ ์คํธ ํต๊ณผ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๋ก์ง ์์ฑ * feat/OPS-222 : ์คํ์ด์ค ์ญ์ ๊ตฌํ * fix/OPS-222 : ํ ์คํธ ์ผ์ด์ค ํต๊ณผ * feat/OPS-245 : controller ๋จ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-245 : ์คํ์ด์ค ๋ช ๋ณ๊ฒฝ ๊ตฌํ * fix/OPS-244 : ์ด๋ฆ ๋ณ๊ฒฝ ์ saveAndFlush๋ก ์ฆ์ ๋ฐ์ * chore/OPS-222 : develop ์ต์ ์ฌํญ ๋ฐ์ * fix : ์ ์ฅ * fix/OPS-222 : globalExceptionHandler ์ปจ๋ฒค์ ํต์ผ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ controller ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-244 : membership ๊ด๋ฆฌ ๋น ์์ฑ * feat/OPS-244 : membership ์์ฑ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ฑ * fix : ํ ์คํธ ์ผ์ด์ค ๊ฐ ์ถฉ๋ ํด๊ฒฐ ์ค * fix : ์ต์ ์ฌํญ ๋ฐ์ * ์์์ ์ฅ * ์ด๊ธฐ ์ํ * fix : ๋ฏธ๋ด์ฑ ์ ์ฉ * feat/OPS-244 : ์คํ์ด์ค ๋ฉค๋ฒ ์ถ๊ฐ ๊ธฐ๋ฅ * fix : spaceControllerTest์ memberControllerTest ๊ฐ ์ถฉ๋ ํด๊ฒฐ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * chore/OPS-244 : ์ธ์ฆ ๊ด๋ จ ์ฝ๋ ์ฃผ์ ์ฒ๋ฆฌ * feat/OPS-270 : ์คํ์ด์ค ๋ก์ง์ ์ฌ์ฉ์ ์ ๋ณด ์ฒดํฌ ์ถ๊ฐ * feat/OPS-22 : ํ ์คํธ ์ผ์ด์ค์ WithUserDetails ๋ฐ์ * feat/OPS-222 : ์ธ์ฆ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * fix : ๋ถํ์ํ ์ฃผ์ ์ญ์ * fix : ๋ถํ์ํ ํ์ผ ์ญ์ --------- Co-authored-by: EpicFn <[email protected]> * Ops 272 be feat ์๋ฃ ์ด๋ฆ ์กฐํ (#31) * feat/OPS-211 : ํด๋ ์ด๋ฆ ๋ณ๊ฒฝ ๊ตฌํ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * feat/OPS-272 : ํด๋/ํ์ผ ์กฐํ ๊ตฌํ * refactor/OPS-272 : tag ์์ฑ์ ์ถ๊ฐ * feat/OPS-195 : ๋ด์ค ๋ชฉ๋ก ์กฐํ ๊ธฐ๋ฅ ๊ตฌํ(์ต์ ๋ด์ค, ํค์๋ ๊ธฐ๋ฐ). ์๋น์ค ํ ์คํธ ์ถ๊ฐ. (#33) * refactor/OPS-277 : default ํด๋ ์๋ ์์ฑ (#34) * [chore/OPS-278] Auth, Member, News ๋๋ฉ์ธ ๋ฌธ์ํ ๋ฐ ๊ณ ๋ํ. (#35) * chore/OPS-278 : Auth ๋๋ฉ์ธ ๋ฌธ์ํ ์๋ฃ & ApiV1MemberController ์ถ๊ฐ ๊ธฐ๋ฅ ๊ตฌํ. * refactor/OPS-278 : ApiV1MemberController ์ถ๊ฐ ์ฌํญ์ ๋ง๊ฒ ํ ์คํธ ์ถ๊ฐ ๊ตฌํ. * refactor/OPS-278 : Member ์์ฑ ์, ๋๋คํ UUID์ ์ 5๊ธ์๋ฅผ ํ๊ทธ๋ก ์ฌ์ฉํ๋๋ก ๋ณ๊ฒฝ. * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- Co-authored-by: EpicFn <[email protected]> * refactor/OPS-283 : datasource ์ํฐํฐ ์์ (#39) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * [feat/OPS-175] ์น ํฌ๋กค๋ง ๋ฐ์ดํฐ ์ ์ ํ ๊ธฐ๋ฅ ๊ตฌํ (#41) * feat/OPS-175 : ์น ํฌ๋กค๋ง ๋ฐ์ดํฐ ์ ์ ํ ๊ธฐ๋ฅ ๊ตฌํ * [refactor/OPS-287] News ๋๋ฉ์ธ ๊ณ ๋ํ (#42) * refactor/OPS-287 : newsSearch ๋ฉ์๋ ๋ก์ง ๋ณ๊ฒฝ ๋ฐ ์ผ๋ถ API ๋ฌธ์ํ. * refactor/OPS-287 : NewsServiceTest API๋ฅผ ํธ์ถํ๋ ๋ฐฉ์์ผ๋ก ๋ณ๊ฒฝ. * Ops 226 be feat ์๋ฃ ๋ฑ๋ก (#44) * refactor/OPS-283 : datasource ์ํฐํฐ ์์ * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- Co-authored-by: EpicFn <[email protected]> * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * feat/OPS-226 : ์๋ฃ ๋ฑ๋ก ๊ตฌํ * refactor/OPS-226 : ๋ฉ์๋ ๋ช ์์ --------- Co-authored-by: Hyeok Jin Kim <[email protected]> Co-authored-by: EpicFn <[email protected]> * Ops 215 be feat ์๋ฃ ์ญ์ (#46) * refactor/OPS-283 : datasource ์ํฐํฐ ์์ * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- Co-authored-by: EpicFn <[email protected]> * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * feat/OPS-226 : ์๋ฃ ๋ฑ๋ก ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ --------- Co-authored-by: Hyeok Jin Kim <[email protected]> Co-authored-by: EpicFn <[email protected]> * [feat/OPS-293] LiveBlocks๋ฅผ ์ํ React-flow ๋ฐ์ดํฐ ๊ด๋ฆฌ ๋๋ฉ์ธ ์ค๊ณ ์๋ฃ. ํ ์คํธ ์ถ๊ฐ. (#47) * feat/OPS-293 : LiveBlocks๋ฅผ ์ํ React-flow ๋ฐ์ดํฐ ๊ด๋ฆฌ ๋๋ฉ์ธ ์ค๊ณ ์๋ฃ. ํ ์คํธ ์ถ๊ฐ. * feat/OPS-293 : folder ํ ์คํธ์ @transactional ์ถ๊ฐ. * feat/OPS-293 : MemberServiceTest ์์ #1 * feat/OPS-293 : MemberServiceTest ์์ #2 * feat/OPS-293 : Folder ํ ์คํธ์ ActiveProfile(test) ์ถ๊ฐ. * feat/OPS-293 : ํ ์คํธ์ ๋ฌด๊ฒฐ์ฑ ๊ฒ์ฆ์ ์ํ @afterall, @AfterEach ์ถ๊ฐ. * feat/OPS-293 : ์ผ๋ถ ์์ . * feat/OPS-293 : ์ง์ง ๋ง์ง๋ง ์์ . * [chore/ops-132] CI/CD ํ์ดํ๋ผ์ธ ๊ตฌ์ถ (#43) * chore/OPS-133 : CI ํ์ดํ๋ผ์ธ ๊ตฌ์ถ * chore: ํ ์คํธ/์ด์ ํ๊ฒฝ์ฉ GitHub Actions Terraform ์๋ ์ธํ๋ผ ์ ์ฉ ์ํฌํ๋ก์ฐ ์ถ๊ฐ * chore : ํ๊ฒฝ๋ณ์๋ก test/prod ์๋ฒ ๋ถ๋ฆฌ ๊ฐ๋ฅํ๋๋ก ์ค์ * chore/OPS-135 : CD ์ํฌํ๋ก์ฐ ์ถ๊ฐ * chore: CI ํ CD ์คํ๋๋๋ก ์ค์ * chore : CI ์ํฌํ๋ก์ฐ job ๋ถ๋ฆฌ(ํ ์คํธ,๋น๋/๋์ปค ๋น๋,ghcr push) * chore : docker build jobs์์ checkout ๋จ๊ณ ์ถ๊ฐ * chore: CI ์ํฌํ๋ก์ฐ job ๊ตฌ๋ถ ์์ฐ * chore : develop/main ๋ธ๋์น์ ๋ฐ๋ผ CI/CD ์ํฌํ๋ก์ฐ ๋ถ๋ฆฌ * chore : Spring Boot Acutator ์์กด์ฑ ์ถ๊ฐ * chore: Actions์์ SSH ์ ์ ํ docker ์คํ ๊ถํ ๊ฐ๋๋ก ์ค์ * chore: ์ปจํ ์ด๋ ์คํ ๋ก๊ทธ ํฐ๋ฏธ๋์ ์ถ๋ ฅ ์ค์ * chore : ํฌ์ค์ฒดํฌ ์ค์ * chore: secrets ์ง์ ssh ํ๊ฒฝ ๋ณ์๋ก ์ ๋ฌ * chore: ํ๊ฒฝ๋ณ์ ์ง์ docker run์ ๋ฃ๊ธฐ * chore: spdocker run ์์ ring profile ์ ๊ฑฐ * chore: nginx ์ค์ * chore: test-cd ์์ * chore: test-cd ์์ 2 * chore: ghcr ๋ก๊ทธ์ธ ํ ํฐ ์์ * chore: ๋์ปค ์ด๋ฏธ์ง pull ์ด๋ฆ ์์ * chore: ssh ๋ด ์์ ํ ghcr ๋ก๊ทธ์ธ * chore : ์ด๋ฏธ pullํ ์ด๋ฏธ์ง์ run ์ด๋ฏธ์ง ์ด๋ฆ ์ผ์น์ํค๊ธฐ * chore: mysql driver ์์กด์ฑ ์ถ๊ฐ * chore : ํฌ์ค์ฒดํฌ ์์ฒญ ์คํ๋ง ์ํ๋ฆฌํฐ ํํฐ์ ๊ฑธ๋ฆฌ์ง ์๋๋ก ์ค์ * chore: nginx ํฌํธ ์ค์์นญ ์ค์ * chore: nginx ํฌํธ ์ค์์นญ ์ค์ ์์ * chore: nginx ํฌํธ ์ค์์นญ ์ค์ ์์ 2 * chore: ์ด์์๋ฒ CD ์ํฌํ๋ก์ฐ ์์ * chore : prod-server ์ํฌํ๋ก์ฐ ํ์ฑํ ๊ฒฝ๋ก ์ค์ * chore : test commit ๋์ค์ ์ง์ฐ๊ธฐ * [Feat/OPS-214] ์คํ์ด์ค ๋ฉค๋ฒ ๊ด๋ฆฌ (#50) * feat/OPS-227 : ์คํ์ด์ค ๋ฉค๋ฒ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-227 : ์คํ์ด์ค ๋ชฉ๋ก ๋ฐํ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-251 : ๊ถํ ๋ณ๊ฒฝ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-214 : ๊ถํ ๋ณ๊ฒฝ ์๋ํฌ์ธํธ ๊ตฌํ * fix/OPS-214 : ๋จ์ ๋ฉ์ธ์ง ์ค๋ฅ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-214 : ๋ก์ง ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-251 : globalExceptionHandler์ ์ญ์ง๋ ฌํ ์คํจ ์๋ฌ ์ถ๊ฐ * refactor/OPS-214 : ๋น์ฆ๋์ค ๋ก์ง์ ์๋น์ค ๊ณ์ธต์ ์ผ์ * feat/OPS-231 : ์คํ์ด์ค ์ด๋ ์ปจํธ๋กค๋ฌ ํ ์คํธ์ผ์ด์ค ์์ฑ * feat/OPS-231 : ์คํ์ด์ค ์ด๋ ๋ก์ง ์์ฑ * feat/OPS-231 : ์คํ์ด์ค์ด๋ ์๋น์ค ๋น ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * feat/OPS-228 : ํ์ ํด์ถ ์ปจํธ๋กค๋ฌ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feeat/OPS-229 : ํ์ ํด์ถ ๊ตฌํ ์๋ฃ * fix : ๊ธฐ์กด ํ ์คํธ ์ผ์ด์ค ์ผ๊ด์ฑ ์๊ฒ ์์ * feat : ๋ฉค๋ฒ ํด์ถ ์๋น์ค ํ ์คํธ ์ฝ๋ ์์ฑ * refactor : DTO ํจํค์ง ๋ณ๊ฒฝ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ์ปจํธ๋กค๋ฌ ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ๋ก์ง ์์ฑ * refactor : space ๋๋ฉ์ธ dto ํจํค์ง ๋ณ๊ฒฝ * feat/OPS-227 : ์คํ์ด์ค ๋ฉค๋ฒ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-227 : ์คํ์ด์ค ๋ชฉ๋ก ๋ฐํ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-251 : ๊ถํ ๋ณ๊ฒฝ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-214 : ๊ถํ ๋ณ๊ฒฝ ์๋ํฌ์ธํธ ๊ตฌํ * fix/OPS-214 : ๋จ์ ๋ฉ์ธ์ง ์ค๋ฅ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-214 : ๋ก์ง ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-251 : globalExceptionHandler์ ์ญ์ง๋ ฌํ ์คํจ ์๋ฌ ์ถ๊ฐ * refactor/OPS-214 : ๋น์ฆ๋์ค ๋ก์ง์ ์๋น์ค ๊ณ์ธต์ ์ผ์ * feat/OPS-231 : ์คํ์ด์ค ์ด๋ ์ปจํธ๋กค๋ฌ ํ ์คํธ์ผ์ด์ค ์์ฑ * feat : ์ต์ ์ฌํญ ๋ฐ์ * feat/OPS-231 : ์คํ์ด์ค์ด๋ ์๋น์ค ๋น ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * feat/OPS-228 : ํ์ ํด์ถ ์ปจํธ๋กค๋ฌ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feeat/OPS-229 : ํ์ ํด์ถ ๊ตฌํ ์๋ฃ * fix : ๊ธฐ์กด ํ ์คํธ ์ผ์ด์ค ์ผ๊ด์ฑ ์๊ฒ ์์ * feat : ๋ฉค๋ฒ ํด์ถ ์๋น์ค ํ ์คํธ ์ฝ๋ ์์ฑ * refactor : DTO ํจํค์ง ๋ณ๊ฒฝ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ์ปจํธ๋กค๋ฌ ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ๋ก์ง ์์ฑ * refactor : space ๋๋ฉ์ธ dto ํจํค์ง ๋ณ๊ฒฝ --------- Co-authored-by: EpicFn <[email protected]> * refactor/OPS-308 : ๋๋ฉ์ธ ๋ถ๋ฆฌ & CI ์ํฌํ๋ก์ฐ์ application-secrets-server.yml ์ถ๊ฐ. (#52) * Ops 255 be feat ์๋ฃ ์์ (#54) * refactor/OPS-283 : datasource ์ํฐํฐ ์์ * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- Co-authored-by: EpicFn <[email protected]> * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * feat/OPS-226 : ์๋ฃ ๋ฑ๋ก ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-255 : ์๋ฃ ์ด๋ ๋ฐ ์์ ๊ตฌํ --------- Co-authored-by: Hyeok Jin Kim <[email protected]> Co-authored-by: EpicFn <[email protected]> * feat/OPS-289 : dataprocessor ์๋น์ค ์์ฑ (#59) * fix/OPS-318 : proxy host ์ค์์นญรฌ๏ฟฝ ssl ์ธ์ฆ์ ์ ์ง (#60) * [refactor/OPS-310] redirect url ๋ณ๊ฒฝ (#53) * refactor/OPS-310 : redirect-url ๋ณ๊ฒฝ. * refactor/OPS-310 : ์์ ์์ . * refactor/OPS-310 : ๋ ํ๋์ ์์ ์์ . * refactor/OPS-310 : ํฐ ์์ . * refactor/OPS-310 : ํ ์คํธ * refactor/OPS-310 : ์์ฒญ ์ฌํญ ๋ฐ์. * refactor/OPS-310 : ์์ฒญ ์ฌํญ ๋ฐ์ #2 * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ (#64) * [refactor/OPS-323] News API ์กฐํ ๋ก์ง ์์ . (#65) * ๋ฐฐํฌ ํ ์คํธ #2 * ๋ก์ง ์์ ํ ์คํธ * ๋ก์ง ์์ ํ ์คํธ #2 * refactor/OPS-322 : source ์นผ๋ผ๋ช ์์ (#68) * refactor/OPS-322 : source ์นผ๋ผ๋ช ์์ * refactor/OPS-322 : source ์นผ๋ผ๋ช ์์ * feat/OPS-321 : dataProcessorService์์ ์์ฝ ๋ก์ง ์์ฑ (#69) * [fix/OPS-317] CI/CD ํ์ดํ๋ผ์ธ ์ด๋ฒคํธ ๋ถ๋ฆฌ (#66) * fix : prod-server nginx ์ ๋ณด ์ถ๋ ฅ ์ ๊ฑฐ * fix : prod-server CD ์ํฌํ๋ก์ฐ main์ push๋ ๋ ์คํ๋๋๋ก ์์ * fix : test-server CI๋ pr์ develop์ ์คํ, CD๋ push๋ ๋ ์คํ * fix : test-server CI ์ํฌํ๋ก์ฐ์์ CD ๋ถ๋ถ ์ ๊ฑฐ * chore : ๋น๋์ aws๊ด๋ จ ์ ๋ณด application-secret.yml์ ๋ค์ด๊ฐ๋๋ก ์ค์ (#73) * chore : S3 ์ฌ์ฉ์ ์ํด ๋น๋์ AWS ์ ๋ณด application-secrets.yml์ ์ถ๊ฐ๋๋๋ก ์ค์ * chore : ์ญํ ์ S3 ์ ๊ทผ ์ ์ฑ ๋ถ์ฐฉ ํ๋๋ก ์ค์ * chore : รฃyml์ ์ถ๊ฐ์ ๋ณด ๋ฃ๋๋ก ์ค์ * [Feat/OPS-275] ์คํ์ด์ค ์ธ๋ค์ผ ์ด๋ฏธ์ง ์ ์ฅ (#71) * chore : S3 ํ๊ฒฝ ์ค์ * feat : S3Service ๊ตฌ์ฑ * chore : multipart ๋ฐ์ดํฐ ํฌ๊ธฐ ์ค์ * feat : S3 ์ ๋ก๋ ํ ์คํธ์ฉ ์๋ํฌ์ธํธ ์์ฑ * feat : S3 ์ฐ๋ ์๋ฃ * feat : space entity์ imageUrl ํญ๋ชฉ ์ถ๊ฐ * feat : ์ธ๋ค์ผ ์บก์ฒ ํ ์คํธ์ฉ * feat : ์ธ๋ค์ผ ์ดฌ์ ํ ์คํธ ์๋ํฌ์ธํธ ์์ฑ * feat : ์คํ์ด์ค ์ธ๋ค์ผ ๊ฐฑ์ API ์์ฑ * feat : ์คํ์ด์ค ์ด๋ฏธ์ง ๊ฐฑ์ ๊ธฐ๋ฅ ์์ฑ * feat : ์คํ์ด์ค ๋ชฉ๋ก ๋ฐํ ์ ์ธ๋ค์ผ url ๊ฐ์ด ๋ฐํ * feat : ์คํ์ด์ค ๋จ๊ฑด ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat : ์คํ์ด์ค ๋จ๊ฑด ์กฐํ ๊ตฌํ * feat : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ํ์ด์ง ๊ธฐ๋ฅ ์ถ๊ฐ --------- Co-authored-by: EpicFn <[email protected]> * [feat/OPS-324] ํฌ๋กฌ ํ์ฅ ํ๋ก๊ทธ๋จ ์์ ๋ก๊ทธ์ธ ๋ถ๊ธฐ & ์์ ๋ก๊ทธ์ธ ํ ์คํธ API ์ถ๊ฐ. (#70) * feat/OPS-324 : ํ์ฅ ํ๋ก๊ทธ๋จ ๋ถ๊ธฐ ๋ฐ ์์ ๋ก๊ทธ์ธ ํ ์คํธ API ์ถ๊ฐ. * feat/OPS-324 : ํ ์คํธ ๋ก์ง ์ผ๋ถ ์์ . * feat/OPS-324 : ํ ์คํธ ๋ก์ง ์ผ๋ถ ์์ . #2 * feat/OPS-324 : ํ ์คํธ ์๋ฃ, ํ ์คํธ ์ฝ๋ ์ ๊ฑฐ. * feat/OPS-324 : ๋ก๊ทธ์ธ ๋ถ๊ธฐ ์์ . * feat/OPS-324 : state ์ ๋ณด๋ฅผ ์ ์ฅํ๋ resolver ์ถ๊ฐ. * feat/OPS-324 : session ๋ฑ๋ก์ ์ํ OAuth2LoginSourceFilter ํด๋์ค ์ถ๊ฐ. * feat/OPS-324 : ํด๊ฒฐ * fix : ci ์ secrets ์์ S3 ๊ด๋ จ ์ํฌ๋ฆฟ ๊ฐ ์ญ์ ํ๋๋ก ๋ณ๊ฒฝ(๋ฒํท๋ช ์ ์ธ) (#74) * fix : ci ์ secrets ์์ S3 ๊ด๋ จ ์ํฌ๋ฆฟ ๊ฐ ์ญ์ ํ๋๋ก ๋ณ๊ฒฝ(๋ฒํท๋ช ์ ์ธ) * fix : CI ์คํ ์์ * fix : build ๋จ๊ณ์์ testest๋ฅผ ์ํํ์ง ์๋๋ก ๋ณ๊ฒฝ --------- Co-authored-by: EpicFn <[email protected]> * [feat/OPS-198] ์์นด์ด๋ธ ์ ๋ณด๋ก ๋ด์ค ๋ชฉ๋ก ์กฐํ (#75) * feat/OPS-198 : ์์นด์ด๋ธ ๊ธฐ๋ฐ ๋ด์ค ์กฐํ ๊ตฌํ. * feat/OPS-198 : ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ. * feat/OPS-265 : LLM-ํ์ฉ-๋ฐ์ดํฐ-์ ์ ํ-์-๊ธฐ์กด-์์นด์ด๋ธ์-ํ๊ทธ-์ฐ๋ (#77) * refactor/OPS-319: ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ (#76) * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * fix : SpringDoc๊ณผ Spring AI ๊ฐ ์์กด์ฑ ์ถฉ๋ ํด๊ฒฐ (#79) * [Feat/OPS-327] ์๋ฃ ๋ฑ๋ก llm ์ฐ๋ (#78) * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-327 : ์๋ฃ ๋ฑ๋ก LLM ์ฐ๋ * [feat/OPS-328] ์ธ์ฆ/์ธ๊ฐ ๋ก์ง ๋ณ๊ฒฝ (#80) * feat/OPS-328 : RefreshToken์ ์๋ฒ์์ ์ ์ฅํ๋๋ก ๋ณ๊ฒฝ. API ์ผ๋ถ ์์ . * feat/OPS-328 : ํ์ฅ ํ๋ก๊ทธ๋จ ๋ก๊ทธ์ธ ๋ฉ์๋ ์ถ๊ฐ ๋ฐ ๋ฐ์ดํฐ ์บ์ฑ ๋ฉ์๋ ์ถ๊ฐ. * [refactor/OPS-337] ์๊ตฌ์ฌํญ ๋ฐ์ ๋ฐ ์ผ๋ถ ๋ก์ง ์์ . (#81) * refactor/OPS-337 : ํ๋ก ํธ ์๊ตฌ์ฌํญ ๋ฐ์ ๋ฐ ์๋ฌ ์์ . * refactor/OPS-337 : ํ ์คํธ ์ผ์ด์ค ์์ . * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ (#82) * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : mock ์ถ๊ฐ๋ก ์ธํ testcase ์์ * [feat/OPS-338] ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ (#83) * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : mock ์ถ๊ฐ๋ก ์ธํ testcase ์์ * refactor/OPS-338 : Dev ํ ํฐ ๋ฐ๊ธ ์ปจํธ๋กค๋ฌ ์ถ๊ฐ * [Feat/OPS-326] ๋์๋ณด๋ ๋ฐ์ดํฐ ์ ์ฅ ์ฒด๊ณ ๊ตฌ์ถ (#85) * refactor : graph ๋๋ฉ์ธ์ dashboard ๋๋ฉ์ธ์ผ๋ก ์์ , dashboard ์ํฐํฐ ์์ฑ * feat : ์คํ์ด์ค ๋จ๊ฑด ์กฐํ ์ ๋์๋ณด๋ id๋ ํจ๊ป ๋ฐํ * refactor : API ๋ช ๋ณ๊ฒฝ * dashboard ๊ธฐ๋ฐ์ผ๋ก ์ ์ฅ/์กฐํ ๋๋๋ก ๋ณ๊ฒฝ * refactor : ํ ์คํธ ์ฝ๋ ์์ * fix : ๋ฐํ ๋ฉ์ธ์ง ์์ * feat : ์๋ช ๊ฒ์ฆ ๋ก์ง ๊ตฌํ * refactor : signature ์๋น์ค ๋ถ๋ฆฌ * fix : ์คํ ์์ * fix : CI ํ์ดํ๋ผ์ธ ์์ --------- Co-authored-by: EpicFn <[email protected]> * [feat/OPS-329] Sentry๋ฅผ ํตํ ๋ชจ๋ํฐ๋ง ํ๊ฒฝ ๊ตฌ์ถ. (#86) * feat/OPS-329 : Sentry๋ฅผ ํตํ ๋ชจ๋ํฐ๋ง ํ๊ฒฝ ๊ตฌ์ถ. * feat/OPS-329: ์ถ๊ฐ๋ก ํ๋ก ํธ ์๊ตฌ ์ฌํญ ๋ฐ์. * refactor/OPS-353 : ๋ถ๋ฆฌ ์๋ฃ. (#87) * [refactor/OPS-354] ํ ์คํธ ์ผ์ด์ค ์ฌ์ฉ ํ๋กํ ๋ณ๊ฒฝ. (#88) * refactor/OPS-354 : ํ ์คํธ ์ผ์ด์ค ์ฌ์ฉ ํ๋กํ ๋ณ๊ฒฝ. * refactor/OPS-354 : ์ด๋๋ ์๋ผ? * refactor/OPS-355 : ์๊ตฌ ์ฌํญ ๋ฐ์. (#91) * feat/OPS-358: Redis ์์กด์ฑ ์ถ๊ฐ ๋ฐ RedisConfig ์ค์ ์๋ฃ. AuthResultData ์ง๋ ฌํ ๋ฐ AuthResult ํด๋์ค์ TTL ๋์ . (#92) * feat/OPS-356 : ๋ค์ด๋ฒ ๋ธ๋ก๊ทธ ํฌ๋กค๋ฌ ์์ฑ (#93) * [feat/OPS-252] ์กฐ๊ฑด๋ณ ์๋ฃ ๊ฒ์ (#89) * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-327 : ์๋ฃ ๋ฑ๋ก LLM ์ฐ๋ * refactor/OPS-252 : ์กฐ๊ฑด๋ณ ์๋ฃ ๊ฒ์ ๊ตฌํ * refactor/OPS-252 : ์กฐ๊ฑด๋ณ ์๋ฃ ๊ฒ์ * fix : ์คํ์ด์ค, ์ฌ์ฉ์ ๋ชฉ๋ก ๋ฐํ ์ ํญ์ id ์ค๋ฆ์ฐจ์ ์ ๋ ฌ (#94) Co-authored-by: EpicFn <[email protected]> * IllegalStateException(๋์์ฑ ๋ฌธ์ )๊ด๋ จ ์ฒ๋ฆฌ ๋ฉ์๋ ์ถ๊ฐ. (#95) * [fix/OPS-362] ์๊ตฌ ์ฌํญ ๋ฐ์ (#96) * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์. * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#2 * [feat/OPS-341] ๋ฒจ๋ก๊ทธ ํฌ๋กค๋ฌ ์์ฑ (#90) * feat/OPS-341 : Velog ํฌ๋กค๋ฌ ์์ฑ * fix : createDate,modifyDate ์๋ ์ ์ฉ๋๋๋ก ์ค์ * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#3 (#97) * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#4 (#98) * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#5 (#99) * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#6 (#100) * [refactor/OPS-360] folder&datasource ๋ฆฌํํ ๋ง (#101) * refactor/OPS-360 : OpenAPI ์ ๋ํ ์ด์ ์ถ๊ฐ * refactor/OPS-360 : NoResultException ์์ธ ๋ถ๋ฆฌ * refactor/OPS-360 : param ์ถ๊ฐ * refactor/OPS-360 : param ์ถ๊ฐ * refactor/OPS-360 : default ํด๋ CRUD ๋ก์ง ์์ * refactor/OPS-360 : ํด๋ ๋ฆฌ์คํธ๋ ํธ์ถ ๋ก์ง ์์ * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#7 (#102) * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#8 (#103) * hotfix/OPS-346 : ํ์ผ ์กฐํ ์์ (#104) * [feat/OPS-365 ] soft delete + ํด์งํต ์กฐํ ๊ตฌํ (#105) * feat/OPS-365 : soft delete + ํด์งํต ์กฐํ ๊ตฌํ * refactor/OPS-246 : ์๊ตฌ์ฌํญ ๋ฆฌํฉํ ๋ง * chore : rabbitmq ํ๊ฒฝ์ค์ (#106) * chore : rabbitmq ๋ก์ปฌ ๊ฐ๋ฐ ํ๊ฒฝ ์ค์ * chore : rabbitmq ๊ด๋ จ springboot ํ๊ฒฝ ์ค์ * chore: rabbitmq ์์กด์ฑ ์ถ๊ฐ * [Feat/OPS-344] message queue ๊ตฌํ (#107) * chore : RabbitMQ ํ๊ฒฝ ์ค์ * chore : CI ํ์ดํ๋ผ์ธ์์ RabbitMQ ์ปจํ ์ด๋๋ฅผ ๋์์ ์ฌ์ฉํ๋๋ก ์ค์ * new : RabbitMQ ์ค์ ํด๋์ค, dto ์์ฑ * feat : producer method ์์ฑ * feat : ๋ฉ์ธ์ง ํ ๊ตฌํ ์๋ฃ * feat : ๋ฐ์ดํฐ ์ ์ฅ ์์ฒญ ํ ์คํธ ์ผ์ด์ค ์์ * feat : ConsumerTest ์ฝ๋ ์ถ๊ฐ * fix : ์ ์ฅ ํ ์คํธ ์ผ์ด์ค ์ฑ๊ณต * fix : ํ ์คํธ ์ฝ๋ ์์ ์ค * fix : ํ ์คํธ ์ผ์ด์ค ์ฑ๊ณต * feat : dlq ๋์ * feat : ๋ฐ์ดํฐ ์์ ๋ณด์ฅ์ ์ํด version ์ถ๊ฐ * refactor : MQConfig ํ์ผ ์์น ๋ณ๊ฒฝ * chore : RabbitMQ ํ๊ฒฝ ์ค์ # Conflicts: # docker-compose.yml # src/main/resources/application.yml * chore : CI ํ์ดํ๋ผ์ธ์์ RabbitMQ ์ปจํ ์ด๋๋ฅผ ๋์์ ์ฌ์ฉํ๋๋ก ์ค์ * new : RabbitMQ ์ค์ ํด๋์ค, dto ์์ฑ * feat : producer method ์์ฑ * feat : ๋ฉ์ธ์ง ํ ๊ตฌํ ์๋ฃ * feat : ๋ฐ์ดํฐ ์ ์ฅ ์์ฒญ ํ ์คํธ ์ผ์ด์ค ์์ * feat : ConsumerTest ์ฝ๋ ์ถ๊ฐ * fix : ์ ์ฅ ํ ์คํธ ์ผ์ด์ค ์ฑ๊ณต * fix : ํ ์คํธ ์ฝ๋ ์์ ์ค * fix : ํ ์คํธ ์ผ์ด์ค ์ฑ๊ณต * feat : dlq ๋์ * feat : ๋ฐ์ดํฐ ์์ ๋ณด์ฅ์ ์ํด version ์ถ๊ฐ * refactor : MQConfig ํ์ผ ์์น ๋ณ๊ฒฝ * fix : ์ต์ ์ฌํญ ๋ฐ์ * fix : copilot review ๋ฐ์ * feat : Dashboard์์ graph ์ฐธ์กฐ ๋ฐฉ์ EAGER -> LAZY ๋ก ๋ณ๊ฒฝ * CI ์คํจํด์ ๋ค์ EAGER๋ก ๋ณ๊ฒฝ * fix : ๋ค์ LAZY๋ก ๋ณ๊ฒฝ --------- Co-authored-by: EpicFn <[email protected]> * [Refactor/OPS-373] ์๋ฃ ์กฐํ ๊ฒ์ ์๊ตฌ์ฌํญ ์์ (#108) * refactor/OPS-373 : ์๋ฃ ์ด๋ฆ unique ์์ฑ ์ญ์ * refactor/OPS-373 : ์๋ฃ ์์ ๊ฐ๋ฅ ์นผ๋ผ ์ถ๊ฐ * refactor/OPS-373 : ๋ช ์์ null๊ณผ ๋ฏธ์ ๋ฌ ๊ตฌ๋ถ * [Feat/OPS-376] ์คํ์ด์ค ๋ชฉ๋ก ์ฐธ์ฌ ์ธ์ ๋ฐํ api ๊ตฌ์ฑ (#109) * refactor : dto ์ด๋ฆ ์ผ๋ถ ๋ณ๊ฒฝ * feat : ๊ตฌํ ์๋ฃ * feat : ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * fix : ํ ์คํธ ์ผ์ด์ค ์์ --------- Co-authored-by: EpicFn <[email protected]> * [Refactor/OPS-290] ๋ฐ์ดํฐ์์ค ์ ์ ํ ๊ธฐ๋ฅ ๊ณ ๋ํ (#112) * refactor/OPS-290 : ๋ฐ์ดํฐ์์ค ์ ์ ํ ๊ธฐ๋ฅ ๊ณ ๋ํ * [Feat/OPS-346] ๊ณต์ ํด๋ ๊ด๋ฆฌ (#113) * refactor/OPS-360 : OpenAPI ์ ๋ํ ์ด์ ์ถ๊ฐ * refactor/OPS-360 : NoResultException ์์ธ ๋ถ๋ฆฌ * refactor/OPS-360 : param ์ถ๊ฐ * refactor/OPS-360 : param ์ถ๊ฐ * refactor/OPS-360 : default ํด๋ CRUD ๋ก์ง ์์ * refactor/OPS-360 : ํด๋ ๋ฆฌ์คํธ๋ ํธ์ถ ๋ก์ง ์์ * refactor/OPS-346 : ๊ณต์ ํด๋ ๊ด๋ฆฌ * feat/OPS-365 : soft delete + ํด์งํต ์กฐํ ๊ตฌํ * feat/OPS-346 : ๊ณต์ ํด๋ ๊ด๋ฆฌ * feat/OPS-346 : ๊ณต์ ํด๋ ๊ด๋ฆฌ * refactor/OPS-346 : ๊ฐ์ธ / ๊ณต์ ํณ๋ ๊ด๋ฆฌ ๋ถ๋ฆฌ * refactor/OPS-346 : ๊ฒ์ ๊ธฐ๋ฅ ์ถ์ฒ ๋๋ฝ ์์ * feat : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ์ ์์ฑ ์ผ์๋ ๋ฐํ (#114) Co-authored-by: EpicFn <[email protected]> * [feat/OPS-377] ์ด์/ํ ์คํธ ์๋ฒ ๋ถ๋ฆฌ ์์ (#115) * feat/OPS-377 : ํ ์คํธ/์ด์ ํ๊ฒฝ ๋ถ๋ฆฌ * feat/OPS-377 : ํ ์คํธ/์ด์ ํ๊ฒฝ ๋ถ๋ฆฌ #2 * feat/OPS-377 : ํ ์คํธ/์ด์ ํ๊ฒฝ ๋ถ๋ฆฌ #3 * feat/OPS-377 : ํ ์คํธ/์ด์ ํ๊ฒฝ ๋ถ๋ฆฌ #4 * [Fix/OPS-378] ๋์๋ณด๋ ํ์ entity ์์ (#117) * fix : node, edge dto ์์ * fix : ํ ์คํธ ์ผ์ด์ค ์์ * fix : ํ ์คํธ ์์ ์๋ฃ * fix : ์คํ ์์ * fix : ์คํ ์ถ๊ฐ ์์ ; --------- Co-authored-by: EpicFn <[email protected]> * [Feat/OPS-379] liveblocks ์ฐ๋ (#118) * new : Liveblock API ํธ์ถ์ ์ํ Client ๋น ์์ฑ * feat : ์คํ์ด์ค ์์ฑ/์ญ์ ์ liveblocks room ๋ ํจ๊ป ์์ฑ/์ญ์ * fix : test ์ mock ๋น ์ฌ์ฉ * feat : jwt ๋ฐ๊ธ ๋ก์ง ๊ตฌํ --------- Co-authored-by: EpicFn <[email protected]> * [Feat/OPS-246] ๊ณต์ ํ์ผ ๊ด๋ฆฌ (#119) * refactor/OPS-360 : OpenAPI ์ ๋ํ ์ด์ ์ถ๊ฐ * refactor/OPS-360 : NoResultException ์์ธ ๋ถ๋ฆฌ * refactor/OPS-360 : param ์ถ๊ฐ * refactor/OPS-360 : param ์ถ๊ฐ * refactor/OPS-360 : default ํด๋ CRUD ๋ก์ง ์์ * refactor/OPS-360 : ํด๋ ๋ฆฌ์คํธ๋ ํธ์ถ ๋ก์ง ์์ * refactor/OPS-346 : ๊ณต์ ํด๋ ๊ด๋ฆฌ * feat/OPS-365 : soft delete + ํด์งํต ์กฐํ ๊ตฌํ * feat/OPS-346 : ๊ณต์ ํด๋ ๊ด๋ฆฌ * feat/OPS-346 : ๊ณต์ ํด๋ ๊ด๋ฆฌ * feat/OPS-246 : ๊ณต์ ํ์ผ ๊ด๋ฆฌ * refactor/OPS-346 : ๊ฐ์ธ / ๊ณต์ ํณ๋ ๊ด๋ฆฌ ๋ถ๋ฆฌ * refactor/OPS-346 : ๊ฐ์ธ / ๊ณต์ ํ์ผ ๊ด๋ฆฌ ๋ถ๋ฆฌ * refactor/OPS-346 : ๊ฒ์ ๊ธฐ๋ฅ ์ถ์ฒ ๋๋ฝ ์์ * feat/OPS-246 : ๊ฐ์ธ / ๊ณต์ ํ์ผ ๊ด๋ฆฌ ๋ถ๋ฆฌ * feat/OPS-246 : api ์์ฒญ ์์ * feat/OPS-246 : api ์์ฒญ ์์ - request ์ด๋ฆ ํต์ผ * refactor/OPS-246 : ๋จธ์ง * refactor/OPS-246 : ๋จธ์ง * [Feat/OPS-388] ๋ค๊ฑด์ญ์ DELETE ๋ณธ๋ฌธ ์์ (#122) * refactor/OPS-388 : ๋ค๊ฑด์ญ์ DELETE ๋ณธ๋ฌธ ์์ * refactor/OPS-388 : ๋ค๊ฑด์ญ์ DELETE ํ ์คํธ ์ผ์ด์ค ์์ * Hotfix/์คํ์ด์ค์ด๋๋ชฉ๋ก ๋ฐํ ์ invite id ํฌํจ (#123) * fix : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์ inviteId ๋ฐํํ๋๋ก ๋ณ๊ฒฝ * fix : ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ --------- Co-authored-by: EpicFn <[email protected]> * [Feat/OPS-379] liveblocks ์ฐ๋ (#124) * new : Liveblock API ํธ์ถ์ ์ํ Client ๋น ์์ฑ * feat : ์คํ์ด์ค ์์ฑ/์ญ์ ์ liveblocks room ๋ ํจ๊ป ์์ฑ/์ญ์ * fix : test ์ mock ๋น ์ฌ์ฉ * feat : jwt ๋ฐ๊ธ ๋ก์ง ๊ตฌํ * fix : SpaceArchiveDataSourceControllerTest์์ liveblocks ๋น mock ์ฒ๋ฆฌ * fix : ์คํ ์์ --------- Co-authored-by: EpicFn <[email protected]> * refactor : secrets๊ฐ ์ปจํ ์ด๋ ์คํ์ ํ๊ฒฝ๋ณ์๋ก ์ฃผ์ ๋๋๋ก ์์ (#120) * refactor: ๋น๋ ์ secrets.yml ํ์ผ ์ญ์ * refactor : ํ ์คํธ ์๋ฒ ํ๊ฒฝ๋ณ์ ์ฃผ์ ์ค์ * refactor : ์ด์์๋ฒ ํ๊ฒฝ๋ณ์ ์ฃผ์ ์ค์ * refactor : ์ด์ํ๊ฒฝ๋ณ YML ๋ถ๋ฆฌ ๋ฐ ๋ฐฐํฌ ํ๊ฒฝ ์ค์ ๊ตฌ์กฐ ๊ฐ์ * refactor : ๋ก์ปฌ(dev,test).yml ๋ณต๊ตฌ * refactor : ๋น๋์ ํ ์คํธ secrets.yml V2๋ก ๋ณ๊ฒฝ * refactor: gradle ํ ์คํธ์ ํ๊ฒฝ๋ณ์๋ก ์ค์ ๊ฐ ์ฃผ์ * refactor: ymlํ์ผ ๋ค์ฌ์ฐ๊ธฐ ์์ * refactor: yml ํ๋ ์ด์คํ๋ ๋ค์ด๋ฐ ๊ท์น ์ผ๊ด์ฑ ์ ์งํ๋๋ก ์์ * [Feat/ops-379] feat liveblocks ์ฐ๋ (#127) * new : Liveblock API ํธ์ถ์ ์ํ Client ๋น ์์ฑ * feat : ์คํ์ด์ค ์์ฑ/์ญ์ ์ liveblocks room ๋ ํจ๊ป ์์ฑ/์ญ์ * fix : test ์ mock ๋น ์ฌ์ฉ * feat : jwt ๋ฐ๊ธ ๋ก์ง ๊ตฌํ * fix : SpaceArchiveDataSourceControllerTest์์ liveblocks ๋น mock ์ฒ๋ฆฌ * fix : ์คํ ์์ * new : Liveblock API ํธ์ถ์ ์ํ Client ๋น ์์ฑ # Conflicts: # src/main/java/org/tuna/zoopzoop/backend/global/clients/liveblocks/LiveblocksClient.java --------- Co-authored-by: EpicFn <[email protected]> * fix : ์คํ ์์ (#128) Co-authored-by: EpicFn <[email protected]> * [Hotfix] ํ์ดํ๋ผ์ธ ์คํ ์์ (#129) * fix : ์คํ ์์ * fix : bucket ์คํ ์์ * fix: S3 ๊ด๋ จ ๊ฐ ๋กค๋ฐฑ --------- Co-authored-by: EpicFn <[email protected]> * refactor: s3 prefix separation (#131) * refactor: S3 prefix ํ๊ฒฝ๋ณ์ ๋ถ๋ฆฌ ๋ฐ server ํ๋กํ์ผ ์ค์ ์ถ๊ฐ * fix: cd ์คํ ์์ * fix : docker run ์ฃผ์ ์์ฐ * refactor: s3 prefix separation (#132) * refactor: S3 prefix ํ๊ฒฝ๋ณ์ ๋ถ๋ฆฌ ๋ฐ server ํ๋กํ์ผ ์ค์ ์ถ๊ฐ * fix: cd ์คํ ์์ * fix : docker run ์ฃผ์ ์์ฐ * fix: bucket ์คํ ์์ * fix: ์คํ ์ ๊ฑฐ * [fix/OPS-390] Secret ๊ฐ ๊ด๋ จ ์ผ๋ถ ์์ (#126) * fix/OPS-390 : secret ํ ํ๋ฆฟ ๋ฐ ์์ ์ฌํญ์ ๋ง๊ฒ ์ฝ๋ ๋ณ์๋ช ๋ณ๊ฒฝ. * feat/OPS-390: NEWS API ์์ ์ถ๊ฐ ์ฌํญ ๋ฐ์. * feat/OPS-390: CI ์ํฌํ๋ก์ฐ ์ผ๋ถ ์์ . * feat/OPS-390: ์ผ๋ถ placeholders ์์ . * feat/OPS-390: ์ผ๋ถ ๋ฌธ์ํ ํญ๋ชฉ ์์ . * refactor: s3 prefix ๋ถ๋ฆฌ ๋ฐ ci/cd ์์ ํ (#134) * refactor: S3 prefix ํ๊ฒฝ๋ณ์ ๋ถ๋ฆฌ ๋ฐ server ํ๋กํ์ผ ์ค์ ์ถ๊ฐ * fix: bucket ์คํ ์์ * [Hotfix] ๋ก๊ทธ์ธ ์๋ฌ ์์ (#135) * Update README.md * Remove unnecessary blank line in ApiV1DashboardController * [Feat/OPS-389] ์คํ์ด์ค ์ด๋ ์๋ฆผ ๊ตฌํ (#136) * new : emitter ๊ด๋ฆฌ service, controller ์์ฑ * feat : ํํธ๋นํธ ๋ก์ง ๊ตฌํ * fix : ๋น๋๊ธฐ ์ฒ๋ฆฌ ํ๋๋ก ๋ณ๊ฒฝ * feat : ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * fix : ํ ์คํธ ์์ * fix : ๋ถํ์ํ ์ด๋ ธํ ์ด์ ์ญ์ --------- Co-authored-by: EpicFn <[email protected]> * [feat/OPS-392] ์ฌ์ฉ์ ๊ฒ์ ๊ธฐ๋ฅ ์ถ๊ฐ (#137) * feat/OPS-392: ๊ฒ์ ๊ธฐ๋ฅ ์ถ๊ฐ & ElasticSearch ๊ตฌํ & ์ผ๋ถ ๋๋ฉ์ธ ์ค๋ฅ ์์ . * feat/OPS-392: CI ์ํฌํ๋ก์ฐ์ ElasticSearch ์๋น์ค ์ปจํ ์ด๋ ์์ฑ ๋ก์ง ์ถ๊ฐ. * feat/OPS-392: CI ์ํฌํ๋ก์ฐ์ ElasticSearch ์๋น์ค ์ปจํ ์ด๋ ์์ฑ ๋ก์ง ์ถ๊ฐ #2 * feat/OPS-392: ์ถ๊ฐ ๋๋ฉ์ธ ์ค๋ฅ ์์ . * feat/OPS-392: Docker-compose์ elastic-search ์๋น์ค ํญ๋ชฉ ์ถ๊ฐ. * fix: ๋๋ฉ์ธ ์์ฒญ ์ฌํญ์ ๋ง๊ฒ ์์ . (#138) * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. (#139) * ๋ฐฐํฌ์ฉ ์ปค๋ฐ (#140) * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #2 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. (#142) * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #2 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #3 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #4 * [Feat/OPS-391] ์์นด์ด๋ธ ์๋ฃ img ์๋ฃ ํ์ ์์ (#141) * feat/OPS-391 : ์ด๋ฏธ์ง ์์ multi part ๊ตฌํ * feat/OPS-391 : ์ด๋ฏธ์ง ์์ multi part ๊ตฌํ * refactor/OPS-391 : enum ๋์๋ฌธ์ ๋ฌด์ * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. (#143) * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #2 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #3 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #4 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #5 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #6 * fix: ์ด์์๋ฒ rabbitmq ํ๊ฒฝ๋ณ์ ์ค์ (#144) * feat/OPS-393 : ํฐ์คํ ๋ฆฌ ํฌ๋กค๋ฌ ์์ฑ (#145) * fix/OPS-394: API ๋ฌธ์ํ ๋ฐ s3 ์ค๋ฅ ์์ #1 (#146) * [fix/OPS-394] ๋ฌธ์ํ ๋ฐ ์ค๋ฅ ์์ 3 (#148) * fix/OPS-394: API ๋ฌธ์ํ ๋ฐ s3 ์ค๋ฅ ์์ #3 * fix/OPS-394: API ๋ฌธ์ํ ๋ฐ s3 ์ค๋ฅ ์์ #4 * refactor/OPS-395: ๊ฒ์ ๋ก์ง ์์ . (#149) * fix: ๋ฒจ๋ก๊ทธ ํฌ๋กค๋ฌ ์์ฑ์ผ์ ํ์ฑ ์ด์ ํด๊ฒฐ (#111) * fix : ์์ฑ์ผ์ ํ์ฑ ์ด์ ํด๊ฒฐ * refactor: velog ํฌ๋กค๋ฌ ์ฐ์ ์์ ๋๊ฒ ์ค์ * fix: ๋ฒจ๋ก๊ทธ ํฌ๋กค๋ฌ ์์ธ ์ฒ๋ฆฌ ์ถ๊ฐ (HTML ์์ ์์ ์ ๋น ๋ฌธ์์ด, ์์ฑ์ผ ์์ ์ ๊ธฐ๋ณธ๊ฐ) * fix : docker ์คํ์ AWS ํ๊ฒฝ๋ณ์๊ฐ ์ ๊ฑฐ (#150) * fix: ์ค๋ฐ๊ฟ ๋ฌธ์ ๋ค ๊ณต๋ฐฑ ์ ๊ฑฐ ๋ฐ OPENAI API Key ์ด์ํ๊ฒฝ๊ฐ ๋ถ๋ฆฌ (#152) * refactor/OPS-396: n-gram analyzer ์ ์ฉ์ ํตํ ๊ฒ์ ๊ฒฐ๊ณผ ํฅ์ & OAuth2SuccessHandler ๋ก์ปฌ ํ๊ฒฝ ๋ถ๊ธฐ. (#154) * refactor/OPS-398: ์ธ์ฆ/์ธ๊ฐ ์ค๋ฅ ์์ (#155) * [Refactor/OPS-380] ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ๊ฐ์ (#156) * refactor : membership ์กฐํ ์ lazy loading์ ์ํ n+1 ๋ฌธ์ ๊ฐ์ * refactor : space์ member ๋ชฉ๋ก ์กฐํ ์ n+ 1 ๋ฌธ์ ํด๊ฒฐ --------- Co-authored-by: EpicFn <[email protected]> * Update README.md (#157) * Create DEV_GUIDE.md (#158) * Update README.md (#159) * fix/OPS-399: ๋ฆฌํ๋ ์ ํ ํฐ ์ด์ ์์ . (#160) * refactor/OPS-397 : ๊ฒ์ ์๊ตฌ์ฌํญ ๋ฐ์ (#161) * hotfix : ์คํ์ด์ค ์ด๋ฏธ์ง ์ ์ฅ ๋ก์ง ์์ (#163) * fix : ํ์ฅ์ ์ถ๊ฐํ๊ณ ๋ก๊ทธ ๋ฑ๋๋ก ๋ณ๊ฒฝ * fix : prefix ๋ก ๊ตฌ๋ถํ๋๋ก ๋ณ๊ฒฝ * fix : CI ๊ณผ์ ์ ๋๋ฏธ prefix ๊ฐ ์ถ๊ฐ * fix : ํ๊ฒฝ ํ์ผ์ prefix ์ถ๊ฐ * fix : ์คํ ์์ --------- Co-authored-by: EpicFn <[email protected]> * fix/OPS-399: ๋ฆฌํ๋ ์ ํ ํฐ ์ด์ ์์ #2 (#165) * fix : ์ด๋ฏธ์ง ๊ฒฝ๋ก ๋ฐ ๋ฐํ ํ์ ์์ (#166) Co-authored-by: EpicFn <[email protected]> * fix : Url ์์ (#167) Co-authored-by: EpicFn <[email protected]> * fix/OPS-400 : ์์ &์ญ์ ์๊ตฌ์ฌํญ ๋ฐ์ (#169) * fix: ์ด์์๋ฒ/ํ ์คํธ์๋ฒ vpc ๋ถ๋ฆฌ๋์ด ์์ด, rabbitmq host ๋ ๋ถ๋ฆฌ (#171) * fix : ๋ฉค๋ฒ ์ญ์ ์ ์ ๋ น ์คํ์ด์ค ์ญ์ ๋ก์ง ๊ตฌํ (#172) Co-authored-by: EpicFn <[email protected]> * Develop -> main ๋ณํฉ (#168) (#173) * [feat/OPS-262] GlobalExceptionHandler ์ค์ (#8) * feat: GlobalExceptionHandler ์งํ ์ฌํญ ์ ์ฅ. * feat/OPS-262 : GlobalExceptionHandler ์์ฑ ์๋ฃ. * [feat/OPS-126] Member ๋๋ฉ์ธ ๊ธฐ์ด ์ค๊ณ (#9) * feat/OPS-127 : Member ์ํฐํฐ ์์ฑ(ํ๋, ์ฐ๊ด ๊ด๊ณ, ์์ฑ์, ๋ฉ์๋) * feat/OPS-128 : MemberRepository ์์ฑ(name, email ๊ฒ์ ์ต์ ์ถ๊ฐ) * feat: GlobalExceptionHandler ์์ฑ์ ์ํ ์งํ ์ฌํญ ์ ์ฅ. * feat/OPS-129 : MemberService ์์ฑ(์กฐํ, ์์ฑ/์์ , ์ญ์ ) * feat/OPS-126 : Member ๋๋ฉ์ธ ์ค๊ณ ์๋ฃ. Service ํ ์คํธ ์ฝ๋ ์ถ๊ฐ * [Chore/OPS-264] ci ์ํฌํ๋ก์ฐ ๊ฐ์ (#10) * chore/OPS-264 : ci.yml ์์ * Update .github/workflows/ci.yml * Update .github/workflows/ci.yml --------- * Update .gitignore to exclude IntelliJ files (#11) Add .idea/ to .gitignore to exclude IntelliJ project files * feat/OPS-134 : ApiV1Controller ์์ฑ ์๋ฃ. (#12) * [chore/OPS-268] CI ์ํฌํ๋ก์ฐ ๊ฐ์ #2 (#15) ํ์ฌ ์์ ๋ก๊ทธ์ธ์ ์ฌ์ฉํ๋ ํน์ ๋ฏผ๊ฐํ ๊ฐ(JWT ํ ํฐ, ์์ client_id ๋ฑ)์ @value ์ด๋ ธํ ์ด์ ์ ํตํด ๋ฐ์์ค๊ณ ์์ต๋๋ค. ํ์ง๋ง ํด๋น ๋ฏผ๊ฐํ ๊ฐ์ ์ ์ฅํ yaml ํ์ผ์ ๋ ํฌ์งํ ๋ฆฌ์ ๋ฐ๋ก ์ฌ๋ฆด ์ ์๊ธฐ์, ๋ ํฌ์งํ ๋ฆฌ์ secrets์ ํด๋น ๊ฐ๋ค์ ์ ์ฅํด๋๊ณ , CI ์ํฌํ๋ก์ฐ์ ์ด ๊ฐ๋ค์ ์ฌ์ฉํด์ application-secrets.yml ํ์ผ์ ์์ฑํ๋ ๋ก์ง์ ์ถ๊ฐํ์ต๋๋ค. * [feat/OPS-155] ์์ ๋ก๊ทธ์ธ ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ(์นด์นด์ค) (#18) * feat/OPS-155 : ์์ ๋ก๊ทธ์ธ/ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ (์นด์นด์ค) ์๋ฃ. ์์ ์ฌํญ ๋ฐ์. * feat/OPS-155 : ์์ ๋ก๊ทธ์ธ/ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ (์นด์นด์ค) ์๋ฃ. ์์ ์ฌํญ ๋ฐ์ #2. * feat/OPS-155 : ์์ ๋ก๊ทธ์ธ/ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ (์นด์นด์ค) ์๋ฃ. ์์ ์ฌํญ ๋ฐ์ #3. * [chore/ops-130] Terraform์ ํ์ฉํด EC2 ์ธ์คํด์ค ์์ฑ ๋ฐ ์ค์ (#17) * chore/OPS-266 : EC2 ์ธ์คํด์ค ์์ฑ * chore/OPS-267 : VPC, IAM, SG ์ค์ * chore : ์๋ธ๋ท ์ค์ ์์ ๋ฐ nginx, mysql ๋ณผ๋ฅจ ๋ง์ดํธ ์ค์ ์ถ๊ฐ * chore : Dockerfile ์์ ๋ฐ EC2 ๋ณด์ ๊ทธ๋ฃน ์์ * chore : MYSQL ์ปจํ ์ด๋ ์คํ์ ์ด๊ธฐ DB ์ด๋ฆ ์ง์ ํ๋๋ก ์ค์ * fix/OPS-271 : SecurityConfig ๋ฐ Jwt ์ธ์ฆ ํํฐ ์์ (#19) * Feat/ops 209 be feat ํด๋ ์์ฑ (#21) * refactor: archive_id + name ๋ณตํฉ ์ ๋ํฌ ์ ์ฝ ์ถ๊ฐ * refactor: folder_id + title ๋ณตํฉ ์ ๋ํฌ ์ ์ฝ ์ถ๊ฐ * refactor: member_id, archive_id ๋จ์ผ ์ ๋ํฌ ์ ์ฝ ์ถ๊ฐ * refactor: ์ํฐํฐ ์ ์ฝ * feat/OPS-209-BE-feat-ํด๋-์์ฑ ์๋ฃ * feat/OPS-209-BE-feat-ํด๋-์์ฑ ์๋ฃ * fix : ์ปจ๋ฒค์ ํต์ผ (#22) * Feat/ops 210 be feat ํด๋ ์ญ์ (#23) * feat/OPS-210 : ํด๋ ์ญ์ ๊ตฌํ * [feat/OPS-151] llm ํ์ฉ ๋ฐ์ดํฐ ์ ์ ํ ๊ธฐ๋ฅ ๊ตฌํ (#27) - groq api๋ฅผ ์ด์ฉํ์ฌ ์์ฝ, ํ๊ทธ ์ถ์ถ ๊ธฐ๋ฅ ๊ตฌํ * [feat/OPS-158] ์์ ๋ก๊ทธ์ธ ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ(๊ตฌ๊ธ) (#28) * feat/OPS-158 : ์์ ๋ก๊ทธ์ธ(๊ตฌ๊ธ) ๊ตฌํ, JWT, Member, Auth ๋๋ฉ์ธ ๊ณ ๋ํ * feat/OPS-158 : ํ ์คํธ ์ผ์ด์ค ์์ . * fix/OPS-158 : template ์ถฉ๋ ํด๊ฒฐ. * fix/OPS-158 : @transactional import ์์ * feat/OPS-211 : ํด๋ ์ด๋ฆ ๋ณ๊ฒฝ ๊ตฌํ (#25) * feat/OPS-211 : ํด๋ ์ด๋ฆ ๋ณ๊ฒฝ ๊ตฌํ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * [chore/OPS-187] Terraform์ ํ์ฉํด RDS ์ธ์คํด์ค ์์ฑ ๋ฐ ์ค์ (#29) * chore/OPS-187 : Terraform์ ํ์ฉํด RDS ์ธ์คํด์ค ์์ฑ ๋ฐ ์ค์น * chore : RDS ์๋ธ๋ท ๊ทธ๋ฃน private์ผ๋ก ์์ * chore : AWS ๋ฆฌ์์ค ๋ค์ด๋ฐ ๊ท์น ์ ์ฉ * [feat] ์คํ์ด์ค ๋ฐ์ดํฐ ๊ด๋ฆฌ (#32) * new/OPS-222 : space controller, sevice, repository ๋น ์์ฑ # Conflicts: # src/main/java/org/tuna/zoopzoop/backend/global/initData/BaseInitData.java * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ์๋ํฌ์ธํธ ์ถ๊ฐ * new/OPS-222 : spaceControllerTest ํ์ผ ์ธํ * refactor/OPS-222 : ํ ์คํธ ํด๋์ค์ ๊ณต์ฉ ํํธ ์ถ์ ํด๋์ค๋ก ๋ถ๋ฆฌ * fix : ์ต์ ์ฌํญ ๋ฐ์ * fix/OPS-222 : ํ ์คํธ ์ฝ๋์์ ํ์ ๋ค๋ฅด๋ ๊ฑฐ ์์ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๊ตฌํ * feat/OPS-222 : space ๋จ์ ํธ๋ค๋ฌ, ์ปค์คํ ์๋ฌ ์์ฑ * fix/OPS-222 : controller ์์ฑ ํ ์คํธ ํต๊ณผ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๋ก์ง ์์ฑ * feat/OPS-222 : ์คํ์ด์ค ์ญ์ ๊ตฌํ * fix/OPS-222 : ํ ์คํธ ์ผ์ด์ค ํต๊ณผ * feat/OPS-245 : controller ๋จ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-245 : ์คํ์ด์ค ๋ช ๋ณ๊ฒฝ ๊ตฌํ * fix/OPS-244 : ์ด๋ฆ ๋ณ๊ฒฝ ์ saveAndFlush๋ก ์ฆ์ ๋ฐ์ * chore/OPS-222 : develop ์ต์ ์ฌํญ ๋ฐ์ * fix : ์ ์ฅ * fix/OPS-222 : globalExceptionHandler ์ปจ๋ฒค์ ํต์ผ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ controller ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-244 : membership ๊ด๋ฆฌ ๋น ์์ฑ * feat/OPS-244 : membership ์์ฑ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ฑ * fix : ํ ์คํธ ์ผ์ด์ค ๊ฐ ์ถฉ๋ ํด๊ฒฐ ์ค * fix : ์ต์ ์ฌํญ ๋ฐ์ * ์์์ ์ฅ * ์ด๊ธฐ ์ํ * fix : ๋ฏธ๋ด์ฑ ์ ์ฉ * feat/OPS-244 : ์คํ์ด์ค ๋ฉค๋ฒ ์ถ๊ฐ ๊ธฐ๋ฅ * fix : spaceControllerTest์ memberControllerTest ๊ฐ ์ถฉ๋ ํด๊ฒฐ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * chore/OPS-244 : ์ธ์ฆ ๊ด๋ จ ์ฝ๋ ์ฃผ์ ์ฒ๋ฆฌ * feat/OPS-270 : ์คํ์ด์ค ๋ก์ง์ ์ฌ์ฉ์ ์ ๋ณด ์ฒดํฌ ์ถ๊ฐ * feat/OPS-22 : ํ ์คํธ ์ผ์ด์ค์ WithUserDetails ๋ฐ์ * feat/OPS-222 : ์ธ์ฆ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * fix : ๋ถํ์ํ ์ฃผ์ ์ญ์ * new/OPS-222 : space controller, sevice, repository ๋น ์์ฑ # Conflicts: # src/main/java/org/tuna/zoopzoop/backend/global/initData/BaseInitData.java * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ์๋ํฌ์ธํธ ์ถ๊ฐ * new/OPS-222 : spaceControllerTest ํ์ผ ์ธํ * refactor/OPS-222 : ํ ์คํธ ํด๋์ค์ ๊ณต์ฉ ํํธ ์ถ์ ํด๋์ค๋ก ๋ถ๋ฆฌ * fix : ์ต์ ์ฌํญ ๋ฐ์ * fix/OPS-222 : ํ ์คํธ ์ฝ๋์์ ํ์ ๋ค๋ฅด๋ ๊ฑฐ ์์ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๊ตฌํ * feat/OPS-222 : space ๋จ์ ํธ๋ค๋ฌ, ์ปค์คํ ์๋ฌ ์์ฑ * fix/OPS-222 : controller ์์ฑ ํ ์คํธ ํต๊ณผ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๋ก์ง ์์ฑ * feat/OPS-222 : ์คํ์ด์ค ์ญ์ ๊ตฌํ * fix/OPS-222 : ํ ์คํธ ์ผ์ด์ค ํต๊ณผ * feat/OPS-245 : controller ๋จ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-245 : ์คํ์ด์ค ๋ช ๋ณ๊ฒฝ ๊ตฌํ * fix/OPS-244 : ์ด๋ฆ ๋ณ๊ฒฝ ์ saveAndFlush๋ก ์ฆ์ ๋ฐ์ * chore/OPS-222 : develop ์ต์ ์ฌํญ ๋ฐ์ * fix : ์ ์ฅ * fix/OPS-222 : globalExceptionHandler ์ปจ๋ฒค์ ํต์ผ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ controller ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-244 : membership ๊ด๋ฆฌ ๋น ์์ฑ * feat/OPS-244 : membership ์์ฑ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ฑ * fix : ํ ์คํธ ์ผ์ด์ค ๊ฐ ์ถฉ๋ ํด๊ฒฐ ์ค * fix : ์ต์ ์ฌํญ ๋ฐ์ * ์์์ ์ฅ * ์ด๊ธฐ ์ํ * fix : ๋ฏธ๋ด์ฑ ์ ์ฉ * feat/OPS-244 : ์คํ์ด์ค ๋ฉค๋ฒ ์ถ๊ฐ ๊ธฐ๋ฅ * fix : spaceControllerTest์ memberControllerTest ๊ฐ ์ถฉ๋ ํด๊ฒฐ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * chore/OPS-244 : ์ธ์ฆ ๊ด๋ จ ์ฝ๋ ์ฃผ์ ์ฒ๋ฆฌ * feat/OPS-270 : ์คํ์ด์ค ๋ก์ง์ ์ฌ์ฉ์ ์ ๋ณด ์ฒดํฌ ์ถ๊ฐ * feat/OPS-22 : ํ ์คํธ ์ผ์ด์ค์ WithUserDetails ๋ฐ์ * feat/OPS-222 : ์ธ์ฆ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * fix : ๋ถํ์ํ ์ฃผ์ ์ญ์ * fix : ๋ถํ์ํ ํ์ผ ์ญ์ --------- * Ops 272 be feat ์๋ฃ ์ด๋ฆ ์กฐํ (#31) * feat/OPS-211 : ํด๋ ์ด๋ฆ ๋ณ๊ฒฝ ๊ตฌํ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * feat/OPS-272 : ํด๋/ํ์ผ ์กฐํ ๊ตฌํ * refactor/OPS-272 : tag ์์ฑ์ ์ถ๊ฐ * feat/OPS-195 : ๋ด์ค ๋ชฉ๋ก ์กฐํ ๊ธฐ๋ฅ ๊ตฌํ(์ต์ ๋ด์ค, ํค์๋ ๊ธฐ๋ฐ). ์๋น์ค ํ ์คํธ ์ถ๊ฐ. (#33) * refactor/OPS-277 : default ํด๋ ์๋ ์์ฑ (#34) * [chore/OPS-278] Auth, Member, News ๋๋ฉ์ธ ๋ฌธ์ํ ๋ฐ ๊ณ ๋ํ. (#35) * chore/OPS-278 : Auth ๋๋ฉ์ธ ๋ฌธ์ํ ์๋ฃ & ApiV1MemberController ์ถ๊ฐ ๊ธฐ๋ฅ ๊ตฌํ. * refactor/OPS-278 : ApiV1MemberController ์ถ๊ฐ ์ฌํญ์ ๋ง๊ฒ ํ ์คํธ ์ถ๊ฐ ๊ตฌํ. * refactor/OPS-278 : Member ์์ฑ ์, ๋๋คํ UUID์ ์ 5๊ธ์๋ฅผ ํ๊ทธ๋ก ์ฌ์ฉํ๋๋ก ๋ณ๊ฒฝ. * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- * refactor/OPS-283 : datasource ์ํฐํฐ ์์ (#39) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * [feat/OPS-175] ์น ํฌ๋กค๋ง ๋ฐ์ดํฐ ์ ์ ํ ๊ธฐ๋ฅ ๊ตฌํ (#41) * feat/OPS-175 : ์น ํฌ๋กค๋ง ๋ฐ์ดํฐ ์ ์ ํ ๊ธฐ๋ฅ ๊ตฌํ * [refactor/OPS-287] News ๋๋ฉ์ธ ๊ณ ๋ํ (#42) * refactor/OPS-287 : newsSearch ๋ฉ์๋ ๋ก์ง ๋ณ๊ฒฝ ๋ฐ ์ผ๋ถ API ๋ฌธ์ํ. * refactor/OPS-287 : NewsServiceTest API๋ฅผ ํธ์ถํ๋ ๋ฐฉ์์ผ๋ก ๋ณ๊ฒฝ. * Ops 226 be feat ์๋ฃ ๋ฑ๋ก (#44) * refactor/OPS-283 : datasource ์ํฐํฐ ์์ * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * feat/OPS-226 : ์๋ฃ ๋ฑ๋ก ๊ตฌํ * refactor/OPS-226 : ๋ฉ์๋ ๋ช ์์ --------- * Ops 215 be feat ์๋ฃ ์ญ์ (#46) * refactor/OPS-283 : datasource ์ํฐํฐ ์์ * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * feat/OPS-226 : ์๋ฃ ๋ฑ๋ก ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ --------- * [feat/OPS-293] LiveBlocks๋ฅผ ์ํ React-flow ๋ฐ์ดํฐ ๊ด๋ฆฌ ๋๋ฉ์ธ ์ค๊ณ ์๋ฃ. ํ ์คํธ ์ถ๊ฐ. (#47) * feat/OPS-293 : LiveBlocks๋ฅผ ์ํ React-flow ๋ฐ์ดํฐ ๊ด๋ฆฌ ๋๋ฉ์ธ ์ค๊ณ ์๋ฃ. ํ ์คํธ ์ถ๊ฐ. * feat/OPS-293 : folder ํ ์คํธ์ @transactional ์ถ๊ฐ. * feat/OPS-293 : MemberServiceTest ์์ #1 * feat/OPS-293 : MemberServiceTest ์์ #2 * feat/OPS-293 : Folder ํ ์คํธ์ ActiveProfile(test) ์ถ๊ฐ. * feat/OPS-293 : ํ ์คํธ์ ๋ฌด๊ฒฐ์ฑ ๊ฒ์ฆ์ ์ํ @afterall, @AfterEach ์ถ๊ฐ. * feat/OPS-293 : ์ผ๋ถ ์์ . * feat/OPS-293 : ์ง์ง ๋ง์ง๋ง ์์ . * [chore/ops-132] CI/CD ํ์ดํ๋ผ์ธ ๊ตฌ์ถ (#43) * chore/OPS-133 : CI ํ์ดํ๋ผ์ธ ๊ตฌ์ถ * chore: ํ ์คํธ/์ด์ ํ๊ฒฝ์ฉ GitHub Actions Terraform ์๋ ์ธํ๋ผ ์ ์ฉ ์ํฌํ๋ก์ฐ ์ถ๊ฐ * chore : ํ๊ฒฝ๋ณ์๋ก test/prod ์๋ฒ ๋ถ๋ฆฌ ๊ฐ๋ฅํ๋๋ก ์ค์ * chore/OPS-135 : CD ์ํฌํ๋ก์ฐ ์ถ๊ฐ * chore: CI ํ CD ์คํ๋๋๋ก ์ค์ * chore : CI ์ํฌํ๋ก์ฐ job ๋ถ๋ฆฌ(ํ ์คํธ,๋น๋/๋์ปค ๋น๋,ghcr push) * chore : docker build jobs์์ checkout ๋จ๊ณ ์ถ๊ฐ * chore: CI ์ํฌํ๋ก์ฐ job ๊ตฌ๋ถ ์์ฐ * chore : develop/main ๋ธ๋์น์ ๋ฐ๋ผ CI/CD ์ํฌํ๋ก์ฐ ๋ถ๋ฆฌ * chore : Spring Boot Acutator ์์กด์ฑ ์ถ๊ฐ * chore: Actions์์ SSH ์ ์ ํ docker ์คํ ๊ถํ ๊ฐ๋๋ก ์ค์ * chore: ์ปจํ ์ด๋ ์คํ ๋ก๊ทธ ํฐ๋ฏธ๋์ ์ถ๋ ฅ ์ค์ * chore : ํฌ์ค์ฒดํฌ ์ค์ * chore: secrets ์ง์ ssh ํ๊ฒฝ ๋ณ์๋ก ์ ๋ฌ * chore: ํ๊ฒฝ๋ณ์ ์ง์ docker run์ ๋ฃ๊ธฐ * chore: spdocker run ์์ ring profile ์ ๊ฑฐ * chore: nginx ์ค์ * chore: test-cd ์์ * chore: test-cd ์์ 2 * chore: ghcr ๋ก๊ทธ์ธ ํ ํฐ ์์ * chore: ๋์ปค ์ด๋ฏธ์ง pull ์ด๋ฆ ์์ * chore: ssh ๋ด ์์ ํ ghcr ๋ก๊ทธ์ธ * chore : ์ด๋ฏธ pullํ ์ด๋ฏธ์ง์ run ์ด๋ฏธ์ง ์ด๋ฆ ์ผ์น์ํค๊ธฐ * chore: mysql driver ์์กด์ฑ ์ถ๊ฐ * chore : ํฌ์ค์ฒดํฌ ์์ฒญ ์คํ๋ง ์ํ๋ฆฌํฐ ํํฐ์ ๊ฑธ๋ฆฌ์ง ์๋๋ก ์ค์ * chore: nginx ํฌํธ ์ค์์นญ ์ค์ * chore: nginx ํฌํธ ์ค์์นญ ์ค์ ์์ * chore: nginx ํฌํธ ์ค์์นญ ์ค์ ์์ 2 * chore: ์ด์์๋ฒ CD ์ํฌํ๋ก์ฐ ์์ * chore : prod-server ์ํฌํ๋ก์ฐ ํ์ฑํ ๊ฒฝ๋ก ์ค์ * chore : test commit ๋์ค์ ์ง์ฐ๊ธฐ * [Feat/OPS-214] ์คํ์ด์ค ๋ฉค๋ฒ ๊ด๋ฆฌ (#50) * feat/OPS-227 : ์คํ์ด์ค ๋ฉค๋ฒ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-227 : ์คํ์ด์ค ๋ชฉ๋ก ๋ฐํ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-251 : ๊ถํ ๋ณ๊ฒฝ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-214 : ๊ถํ ๋ณ๊ฒฝ ์๋ํฌ์ธํธ ๊ตฌํ * fix/OPS-214 : ๋จ์ ๋ฉ์ธ์ง ์ค๋ฅ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-214 : ๋ก์ง ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-251 : globalExceptionHandler์ ์ญ์ง๋ ฌํ ์คํจ ์๋ฌ ์ถ๊ฐ * refactor/OPS-214 : ๋น์ฆ๋์ค ๋ก์ง์ ์๋น์ค ๊ณ์ธต์ ์ผ์ * feat/OPS-231 : ์คํ์ด์ค ์ด๋ ์ปจํธ๋กค๋ฌ ํ ์คํธ์ผ์ด์ค ์์ฑ * feat/OPS-231 : ์คํ์ด์ค ์ด๋ ๋ก์ง ์์ฑ * feat/OPS-231 : ์คํ์ด์ค์ด๋ ์๋น์ค ๋น ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * feat/OPS-228 : ํ์ ํด์ถ ์ปจํธ๋กค๋ฌ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feeat/OPS-229 : ํ์ ํด์ถ ๊ตฌํ ์๋ฃ * fix : ๊ธฐ์กด ํ ์คํธ ์ผ์ด์ค ์ผ๊ด์ฑ ์๊ฒ ์์ * feat : ๋ฉค๋ฒ ํด์ถ ์๋น์ค ํ ์คํธ ์ฝ๋ ์์ฑ * refactor : DTO ํจํค์ง ๋ณ๊ฒฝ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ์ปจํธ๋กค๋ฌ ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ๋ก์ง ์์ฑ * refactor : space ๋๋ฉ์ธ dto ํจํค์ง ๋ณ๊ฒฝ * feat/OPS-227 : ์คํ์ด์ค ๋ฉค๋ฒ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-227 : ์คํ์ด์ค ๋ชฉ๋ก ๋ฐํ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-251 : ๊ถํ ๋ณ๊ฒฝ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-214 : ๊ถํ ๋ณ๊ฒฝ ์๋ํฌ์ธํธ ๊ตฌํ * fix/OPS-214 : ๋จ์ ๋ฉ์ธ์ง ์ค๋ฅ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-214 : ๋ก์ง ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-251 : globalExceptionHandler์ ์ญ์ง๋ ฌํ ์คํจ ์๋ฌ ์ถ๊ฐ * refactor/OPS-214 : ๋น์ฆ๋์ค ๋ก์ง์ ์๋น์ค ๊ณ์ธต์ ์ผ์ * feat/OPS-231 : ์คํ์ด์ค ์ด๋ ์ปจํธ๋กค๋ฌ ํ ์คํธ์ผ์ด์ค ์์ฑ * feat : ์ต์ ์ฌํญ ๋ฐ์ * feat/OPS-231 : ์คํ์ด์ค์ด๋ ์๋น์ค ๋น ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * feat/OPS-228 : ํ์ ํด์ถ ์ปจํธ๋กค๋ฌ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feeat/OPS-229 : ํ์ ํด์ถ ๊ตฌํ ์๋ฃ * fix : ๊ธฐ์กด ํ ์คํธ ์ผ์ด์ค ์ผ๊ด์ฑ ์๊ฒ ์์ * feat : ๋ฉค๋ฒ ํด์ถ ์๋น์ค ํ ์คํธ ์ฝ๋ ์์ฑ * refactor : DTO ํจํค์ง ๋ณ๊ฒฝ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ์ปจํธ๋กค๋ฌ ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ๋ก์ง ์์ฑ * refactor : space ๋๋ฉ์ธ dto ํจํค์ง ๋ณ๊ฒฝ --------- * refactor/OPS-308 : ๋๋ฉ์ธ ๋ถ๋ฆฌ & CI ์ํฌํ๋ก์ฐ์ application-secrets-server.yml ์ถ๊ฐ. (#52) * Ops 255 be feat ์๋ฃ ์์ (#54) * refactor/OPS-283 : datasource ์ํฐํฐ ์์ * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * feat/OPS-226 : ์๋ฃ ๋ฑ๋ก ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-255 : ์๋ฃ ์ด๋ ๋ฐ ์์ ๊ตฌํ --------- * feat/OPS-289 : dataprocessor ์๋น์ค ์์ฑ (#59) * fix/OPS-318 : proxy host ์ค์์นญรฌ๏ฟฝ ssl ์ธ์ฆ์ ์ ์ง (#60) * [refactor/OPS-310] redirect url ๋ณ๊ฒฝ (#53) * refactor/OPS-310 : redirect-url ๋ณ๊ฒฝ. * refactor/OPS-310 : ์์ ์์ . * refactor/OPS-310 : ๋ ํ๋์ ์์ ์์ . * refactor/OPS-310 : ํฐ ์์ . * refactor/OPS-310 : ํ ์คํธ * refactor/OPS-310 : ์์ฒญ ์ฌํญ ๋ฐ์. * refactor/OPS-310 : ์์ฒญ ์ฌํญ ๋ฐ์ #2 * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ (#64) * [refactor/OPS-323] News API ์กฐํ ๋ก์ง ์์ . (#65) * ๋ฐฐํฌ ํ ์คํธ #2 * ๋ก์ง ์์ ํ ์คํธ * ๋ก์ง ์์ ํ ์คํธ #2 * refactor/OPS-322 : source ์นผ๋ผ๋ช ์์ (#68) * refactor/OPS-322 : source ์นผ๋ผ๋ช ์์ * refactor/OPS-322 : source ์นผ๋ผ๋ช ์์ * feat/OPS-321 : dataProcessorService์์ ์์ฝ ๋ก์ง ์์ฑ (#69) * [fix/OPS-317] CI/CD ํ์ดํ๋ผ์ธ ์ด๋ฒคํธ ๋ถ๋ฆฌ (#66) * fix : prod-server nginx ์ ๋ณด ์ถ๋ ฅ ์ ๊ฑฐ * fix : prod-server CD ์ํฌํ๋ก์ฐ main์ push๋ ๋ ์คํ๋๋๋ก ์์ * fix : test-server CI๋ pr์ develop์ ์คํ, CD๋ push๋ ๋ ์คํ * fix : test-server CI ์ํฌํ๋ก์ฐ์์ CD ๋ถ๋ถ ์ ๊ฑฐ * chore : ๋น๋์ aws๊ด๋ จ ์ ๋ณด application-secret.yml์ ๋ค์ด๊ฐ๋๋ก ์ค์ (#73) * chore : S3 ์ฌ์ฉ์ ์ํด ๋น๋์ AWS ์ ๋ณด application-secrets.yml์ ์ถ๊ฐ๋๋๋ก ์ค์ * chore : ์ญํ ์ S3 ์ ๊ทผ ์ ์ฑ ๋ถ์ฐฉ ํ๋๋ก ์ค์ * chore : รฃyml์ ์ถ๊ฐ์ ๋ณด ๋ฃ๋๋ก ์ค์ * [Feat/OPS-275] ์คํ์ด์ค ์ธ๋ค์ผ ์ด๋ฏธ์ง ์ ์ฅ (#71) * chore : S3 ํ๊ฒฝ ์ค์ * feat : S3Service ๊ตฌ์ฑ * chore : multipart ๋ฐ์ดํฐ ํฌ๊ธฐ ์ค์ * feat : S3 ์ ๋ก๋ ํ ์คํธ์ฉ ์๋ํฌ์ธํธ ์์ฑ * feat : S3 ์ฐ๋ ์๋ฃ * feat : space entity์ imageUrl ํญ๋ชฉ ์ถ๊ฐ * feat : ์ธ๋ค์ผ ์บก์ฒ ํ ์คํธ์ฉ * feat : ์ธ๋ค์ผ ์ดฌ์ ํ ์คํธ ์๋ํฌ์ธํธ ์์ฑ * feat : ์คํ์ด์ค ์ธ๋ค์ผ ๊ฐฑ์ API ์์ฑ * feat : ์คํ์ด์ค ์ด๋ฏธ์ง ๊ฐฑ์ ๊ธฐ๋ฅ ์์ฑ * feat : ์คํ์ด์ค ๋ชฉ๋ก ๋ฐํ ์ ์ธ๋ค์ผ url ๊ฐ์ด ๋ฐํ * feat : ์คํ์ด์ค ๋จ๊ฑด ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat : ์คํ์ด์ค ๋จ๊ฑด ์กฐํ ๊ตฌํ * feat : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ํ์ด์ง ๊ธฐ๋ฅ ์ถ๊ฐ --------- * [feat/OPS-324] ํฌ๋กฌ ํ์ฅ ํ๋ก๊ทธ๋จ ์์ ๋ก๊ทธ์ธ ๋ถ๊ธฐ & ์์ ๋ก๊ทธ์ธ ํ ์คํธ API ์ถ๊ฐ. (#70) * feat/OPS-324 : ํ์ฅ ํ๋ก๊ทธ๋จ ๋ถ๊ธฐ ๋ฐ ์์ ๋ก๊ทธ์ธ ํ ์คํธ API ์ถ๊ฐ. * feat/OPS-324 : ํ ์คํธ ๋ก์ง ์ผ๋ถ ์์ . * feat/OPS-324 : ํ ์คํธ ๋ก์ง ์ผ๋ถ ์์ . #2 * feat/OPS-324 : ํ ์คํธ ์๋ฃ, ํ ์คํธ ์ฝ๋ ์ ๊ฑฐ. * feat/OPS-324 : ๋ก๊ทธ์ธ ๋ถ๊ธฐ ์์ . * feat/OPS-324 : state ์ ๋ณด๋ฅผ ์ ์ฅํ๋ resolver ์ถ๊ฐ. * feat/OPS-324 : session ๋ฑ๋ก์ ์ํ OAuth2LoginSourceFilter ํด๋์ค ์ถ๊ฐ. * feat/OPS-324 : ํด๊ฒฐ * fix : ci ์ secrets ์์ S3 ๊ด๋ จ ์ํฌ๋ฆฟ ๊ฐ ์ญ์ ํ๋๋ก ๋ณ๊ฒฝ(๋ฒํท๋ช ์ ์ธ) (#74) * fix : ci ์ secrets ์์ S3 ๊ด๋ จ ์ํฌ๋ฆฟ ๊ฐ ์ญ์ ํ๋๋ก ๋ณ๊ฒฝ(๋ฒํท๋ช ์ ์ธ) * fix : CI ์คํ ์์ * fix : build ๋จ๊ณ์์ testest๋ฅผ ์ํํ์ง ์๋๋ก ๋ณ๊ฒฝ --------- * [feat/OPS-198] ์์นด์ด๋ธ ์ ๋ณด๋ก ๋ด์ค ๋ชฉ๋ก ์กฐํ (#75) * feat/OPS-198 : ์์นด์ด๋ธ ๊ธฐ๋ฐ ๋ด์ค ์กฐํ ๊ตฌํ. * feat/OPS-198 : ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ. * feat/OPS-265 : LLM-ํ์ฉ-๋ฐ์ดํฐ-์ ์ ํ-์-๊ธฐ์กด-์์นด์ด๋ธ์-ํ๊ทธ-์ฐ๋ (#77) * refactor/OPS-319: ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ (#76) * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * fix : SpringDoc๊ณผ Spring AI ๊ฐ ์์กด์ฑ ์ถฉ๋ ํด๊ฒฐ (#79) * [Feat/OPS-327] ์๋ฃ ๋ฑ๋ก llm ์ฐ๋ (#78) * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-327 : ์๋ฃ ๋ฑ๋ก LLM ์ฐ๋ * [feat/OPS-328] ์ธ์ฆ/์ธ๊ฐ ๋ก์ง ๋ณ๊ฒฝ (#80) * feat/OPS-328 : RefreshToken์ ์๋ฒ์์ ์ ์ฅํ๋๋ก ๋ณ๊ฒฝ. API ์ผ๋ถ ์์ . * feat/OPS-328 : ํ์ฅ ํ๋ก๊ทธ๋จ ๋ก๊ทธ์ธ ๋ฉ์๋ ์ถ๊ฐ ๋ฐ ๋ฐ์ดํฐ ์บ์ฑ ๋ฉ์๋ ์ถ๊ฐ. * [refactor/OPS-337] ์๊ตฌ์ฌํญ ๋ฐ์ ๋ฐ ์ผ๋ถ ๋ก์ง ์์ . (#81) * refactor/OPS-337 : ํ๋ก ํธ ์๊ตฌ์ฌํญ ๋ฐ์ ๋ฐ ์๋ฌ ์์ . * refactor/OPS-337 : ํ ์คํธ ์ผ์ด์ค ์์ . * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ (#82) * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : mock ์ถ๊ฐ๋ก ์ธํ testcase ์์ * [feat/OPS-338] ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ (#83) * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : mock ์ถ๊ฐ๋ก ์ธํ testcase ์์ * refactor/OPS-338 : Dev ํ ํฐ ๋ฐ๊ธ ์ปจํธ๋กค๋ฌ ์ถ๊ฐ * [Feat/OPS-326] ๋์๋ณด๋ ๋ฐ์ดํฐ ์ ์ฅ ์ฒด๊ณ ๊ตฌ์ถ (#85) * refactor : graph ๋๋ฉ์ธ์ dashboard ๋๋ฉ์ธ์ผ๋ก ์์ , dashboard ์ํฐํฐ ์์ฑ * feat : ์คํ์ด์ค ๋จ๊ฑด ์กฐํ ์ ๋์๋ณด๋ id๋ ํจ๊ป ๋ฐํ * refactor : API ๋ช ๋ณ๊ฒฝ * dashboard ๊ธฐ๋ฐ์ผ๋ก ์ ์ฅ/์กฐํ ๋๋๋ก ๋ณ๊ฒฝ * refactor : ํ ์คํธ ์ฝ๋ ์์ * fix : ๋ฐํ ๋ฉ์ธ์ง ์์ * feat : ์๋ช ๊ฒ์ฆ ๋ก์ง ๊ตฌํ * refactor : signature ์๋น์ค ๋ถ๋ฆฌ * fix : ์คํ ์์ * fix : CI ํ์ดํ๋ผ์ธ ์์ --------- * [feat/OPS-329] Sentry๋ฅผ ํตํ ๋ชจ๋ํฐ๋ง ํ๊ฒฝ ๊ตฌ์ถ. (#86) * feat/OPS-329 : Sentry๋ฅผ ํตํ ๋ชจ๋ํฐ๋ง ํ๊ฒฝ ๊ตฌ์ถ. * feat/OPS-329: ์ถ๊ฐ๋ก ํ๋ก ํธ ์๊ตฌ ์ฌํญ ๋ฐ์. * refactor/OPS-353 : ๋ถ๋ฆฌ ์๋ฃ. (#87) * [refactor/OPS-354] ํ ์คํธ ์ผ์ด์ค ์ฌ์ฉ ํ๋กํ ๋ณ๊ฒฝ. (#88) * refactor/OPS-354 : ํ ์คํธ ์ผ์ด์ค ์ฌ์ฉ ํ๋กํ ๋ณ๊ฒฝ. * refactor/OPS-354 : ์ด๋๋ ์๋ผ? * refactor/OPS-355 : ์๊ตฌ ์ฌํญ ๋ฐ์. (#91) * feat/OPS-358: Redis ์์กด์ฑ ์ถ๊ฐ ๋ฐ RedisConfig ์ค์ ์๋ฃ. AuthResultData ์ง๋ ฌํ ๋ฐ AuthResult ํด๋์ค์ TTL ๋์ . (#92) * feat/OPS-356 : ๋ค์ด๋ฒ ๋ธ๋ก๊ทธ ํฌ๋กค๋ฌ ์์ฑ (#93) * [feat/OPS-252] ์กฐ๊ฑด๋ณ ์๋ฃ ๊ฒ์ (#89) * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-327 : ์๋ฃ ๋ฑ๋ก LLM ์ฐ๋ * refactor/OPS-252 : ์กฐ๊ฑด๋ณ ์๋ฃ ๊ฒ์ ๊ตฌํ * refactor/OPS-252 : ์กฐ๊ฑด๋ณ ์๋ฃ ๊ฒ์ * fix : ์คํ์ด์ค, ์ฌ์ฉ์ ๋ชฉ๋ก ๋ฐํ ์ ํญ์ id ์ค๋ฆ์ฐจ์ ์ ๋ ฌ (#94) * IllegalStateException(๋์์ฑ ๋ฌธ์ )๊ด๋ จ ์ฒ๋ฆฌ ๋ฉ์๋ ์ถ๊ฐ. (#95) * [fix/OPS-362] ์๊ตฌ ์ฌํญ ๋ฐ์ (#96) * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์. * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#2 * [feat/OPS-341]โฆ
Kimgooner
added a commit
that referenced
this pull request
Oct 14, 2025
* [feat/OPS-262] GlobalExceptionHandler ์ค์ (#8) * feat: GlobalExceptionHandler ์งํ ์ฌํญ ์ ์ฅ. * feat/OPS-262 : GlobalExceptionHandler ์์ฑ ์๋ฃ. * [feat/OPS-126] Member ๋๋ฉ์ธ ๊ธฐ์ด ์ค๊ณ (#9) * feat/OPS-127 : Member ์ํฐํฐ ์์ฑ(ํ๋, ์ฐ๊ด ๊ด๊ณ, ์์ฑ์, ๋ฉ์๋) * feat/OPS-128 : MemberRepository ์์ฑ(name, email ๊ฒ์ ์ต์ ์ถ๊ฐ) * feat: GlobalExceptionHandler ์์ฑ์ ์ํ ์งํ ์ฌํญ ์ ์ฅ. * feat/OPS-129 : MemberService ์์ฑ(์กฐํ, ์์ฑ/์์ , ์ญ์ ) * feat/OPS-126 : Member ๋๋ฉ์ธ ์ค๊ณ ์๋ฃ. Service ํ ์คํธ ์ฝ๋ ์ถ๊ฐ * [Chore/OPS-264] ci ์ํฌํ๋ก์ฐ ๊ฐ์ (#10) * chore/OPS-264 : ci.yml ์์ * Update .github/workflows/ci.yml Co-authored-by: Copilot <[email protected]> * Update .github/workflows/ci.yml Co-authored-by: Copilot <[email protected]> --------- Co-authored-by: Copilot <[email protected]> * Update .gitignore to exclude IntelliJ files (#11) Add .idea/ to .gitignore to exclude IntelliJ project files * feat/OPS-134 : ApiV1Controller ์์ฑ ์๋ฃ. (#12) * [chore/OPS-268] CI ์ํฌํ๋ก์ฐ ๊ฐ์ #2 (#15) ํ์ฌ ์์ ๋ก๊ทธ์ธ์ ์ฌ์ฉํ๋ ํน์ ๋ฏผ๊ฐํ ๊ฐ(JWT ํ ํฐ, ์์ client_id ๋ฑ)์ @value ์ด๋ ธํ ์ด์ ์ ํตํด ๋ฐ์์ค๊ณ ์์ต๋๋ค. ํ์ง๋ง ํด๋น ๋ฏผ๊ฐํ ๊ฐ์ ์ ์ฅํ yaml ํ์ผ์ ๋ ํฌ์งํ ๋ฆฌ์ ๋ฐ๋ก ์ฌ๋ฆด ์ ์๊ธฐ์, ๋ ํฌ์งํ ๋ฆฌ์ secrets์ ํด๋น ๊ฐ๋ค์ ์ ์ฅํด๋๊ณ , CI ์ํฌํ๋ก์ฐ์ ์ด ๊ฐ๋ค์ ์ฌ์ฉํด์ application-secrets.yml ํ์ผ์ ์์ฑํ๋ ๋ก์ง์ ์ถ๊ฐํ์ต๋๋ค. * [feat/OPS-155] ์์ ๋ก๊ทธ์ธ ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ(์นด์นด์ค) (#18) * feat/OPS-155 : ์์ ๋ก๊ทธ์ธ/ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ (์นด์นด์ค) ์๋ฃ. ์์ ์ฌํญ ๋ฐ์. * feat/OPS-155 : ์์ ๋ก๊ทธ์ธ/ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ (์นด์นด์ค) ์๋ฃ. ์์ ์ฌํญ ๋ฐ์ #2. * feat/OPS-155 : ์์ ๋ก๊ทธ์ธ/ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ (์นด์นด์ค) ์๋ฃ. ์์ ์ฌํญ ๋ฐ์ #3. * [chore/ops-130] Terraform์ ํ์ฉํด EC2 ์ธ์คํด์ค ์์ฑ ๋ฐ ์ค์ (#17) * chore/OPS-266 : EC2 ์ธ์คํด์ค ์์ฑ * chore/OPS-267 : VPC, IAM, SG ์ค์ * chore : ์๋ธ๋ท ์ค์ ์์ ๋ฐ nginx, mysql ๋ณผ๋ฅจ ๋ง์ดํธ ์ค์ ์ถ๊ฐ * chore : Dockerfile ์์ ๋ฐ EC2 ๋ณด์ ๊ทธ๋ฃน ์์ * chore : MYSQL ์ปจํ ์ด๋ ์คํ์ ์ด๊ธฐ DB ์ด๋ฆ ์ง์ ํ๋๋ก ์ค์ * fix/OPS-271 : SecurityConfig ๋ฐ Jwt ์ธ์ฆ ํํฐ ์์ (#19) * Feat/ops 209 be feat ํด๋ ์์ฑ (#21) * refactor: archive_id + name ๋ณตํฉ ์ ๋ํฌ ์ ์ฝ ์ถ๊ฐ * refactor: folder_id + title ๋ณตํฉ ์ ๋ํฌ ์ ์ฝ ์ถ๊ฐ * refactor: member_id, archive_id ๋จ์ผ ์ ๋ํฌ ์ ์ฝ ์ถ๊ฐ * refactor: ์ํฐํฐ ์ ์ฝ * feat/OPS-209-BE-feat-ํด๋-์์ฑ ์๋ฃ * feat/OPS-209-BE-feat-ํด๋-์์ฑ ์๋ฃ * fix : ์ปจ๋ฒค์ ํต์ผ (#22) Co-authored-by: EpicFn <[email protected]> * Feat/ops 210 be feat ํด๋ ์ญ์ (#23) * feat/OPS-210 : ํด๋ ์ญ์ ๊ตฌํ * [feat/OPS-151] llm ํ์ฉ ๋ฐ์ดํฐ ์ ์ ํ ๊ธฐ๋ฅ ๊ตฌํ (#27) - groq api๋ฅผ ์ด์ฉํ์ฌ ์์ฝ, ํ๊ทธ ์ถ์ถ ๊ธฐ๋ฅ ๊ตฌํ * [feat/OPS-158] ์์ ๋ก๊ทธ์ธ ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ(๊ตฌ๊ธ) (#28) * feat/OPS-158 : ์์ ๋ก๊ทธ์ธ(๊ตฌ๊ธ) ๊ตฌํ, JWT, Member, Auth ๋๋ฉ์ธ ๊ณ ๋ํ * feat/OPS-158 : ํ ์คํธ ์ผ์ด์ค ์์ . * fix/OPS-158 : template ์ถฉ๋ ํด๊ฒฐ. * fix/OPS-158 : @transactional import ์์ * feat/OPS-211 : ํด๋ ์ด๋ฆ ๋ณ๊ฒฝ ๊ตฌํ (#25) * feat/OPS-211 : ํด๋ ์ด๋ฆ ๋ณ๊ฒฝ ๊ตฌํ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * [chore/OPS-187] Terraform์ ํ์ฉํด RDS ์ธ์คํด์ค ์์ฑ ๋ฐ ์ค์ (#29) * chore/OPS-187 : Terraform์ ํ์ฉํด RDS ์ธ์คํด์ค ์์ฑ ๋ฐ ์ค์น * chore : RDS ์๋ธ๋ท ๊ทธ๋ฃน private์ผ๋ก ์์ * chore : AWS ๋ฆฌ์์ค ๋ค์ด๋ฐ ๊ท์น ์ ์ฉ * [feat] ์คํ์ด์ค ๋ฐ์ดํฐ ๊ด๋ฆฌ (#32) * new/OPS-222 : space controller, sevice, repository ๋น ์์ฑ # Conflicts: # src/main/java/org/tuna/zoopzoop/backend/global/initData/BaseInitData.java * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ์๋ํฌ์ธํธ ์ถ๊ฐ * new/OPS-222 : spaceControllerTest ํ์ผ ์ธํ * refactor/OPS-222 : ํ ์คํธ ํด๋์ค์ ๊ณต์ฉ ํํธ ์ถ์ ํด๋์ค๋ก ๋ถ๋ฆฌ * fix : ์ต์ ์ฌํญ ๋ฐ์ * fix/OPS-222 : ํ ์คํธ ์ฝ๋์์ ํ์ ๋ค๋ฅด๋ ๊ฑฐ ์์ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๊ตฌํ * feat/OPS-222 : space ๋จ์ ํธ๋ค๋ฌ, ์ปค์คํ ์๋ฌ ์์ฑ * fix/OPS-222 : controller ์์ฑ ํ ์คํธ ํต๊ณผ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๋ก์ง ์์ฑ * feat/OPS-222 : ์คํ์ด์ค ์ญ์ ๊ตฌํ * fix/OPS-222 : ํ ์คํธ ์ผ์ด์ค ํต๊ณผ * feat/OPS-245 : controller ๋จ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-245 : ์คํ์ด์ค ๋ช ๋ณ๊ฒฝ ๊ตฌํ * fix/OPS-244 : ์ด๋ฆ ๋ณ๊ฒฝ ์ saveAndFlush๋ก ์ฆ์ ๋ฐ์ * chore/OPS-222 : develop ์ต์ ์ฌํญ ๋ฐ์ * fix : ์ ์ฅ * fix/OPS-222 : globalExceptionHandler ์ปจ๋ฒค์ ํต์ผ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ controller ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-244 : membership ๊ด๋ฆฌ ๋น ์์ฑ * feat/OPS-244 : membership ์์ฑ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ฑ * fix : ํ ์คํธ ์ผ์ด์ค ๊ฐ ์ถฉ๋ ํด๊ฒฐ ์ค * fix : ์ต์ ์ฌํญ ๋ฐ์ * ์์์ ์ฅ * ์ด๊ธฐ ์ํ * fix : ๋ฏธ๋ด์ฑ ์ ์ฉ * feat/OPS-244 : ์คํ์ด์ค ๋ฉค๋ฒ ์ถ๊ฐ ๊ธฐ๋ฅ * fix : spaceControllerTest์ memberControllerTest ๊ฐ ์ถฉ๋ ํด๊ฒฐ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * chore/OPS-244 : ์ธ์ฆ ๊ด๋ จ ์ฝ๋ ์ฃผ์ ์ฒ๋ฆฌ * feat/OPS-270 : ์คํ์ด์ค ๋ก์ง์ ์ฌ์ฉ์ ์ ๋ณด ์ฒดํฌ ์ถ๊ฐ * feat/OPS-22 : ํ ์คํธ ์ผ์ด์ค์ WithUserDetails ๋ฐ์ * feat/OPS-222 : ์ธ์ฆ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * fix : ๋ถํ์ํ ์ฃผ์ ์ญ์ * new/OPS-222 : space controller, sevice, repository ๋น ์์ฑ # Conflicts: # src/main/java/org/tuna/zoopzoop/backend/global/initData/BaseInitData.java * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ์๋ํฌ์ธํธ ์ถ๊ฐ * new/OPS-222 : spaceControllerTest ํ์ผ ์ธํ * refactor/OPS-222 : ํ ์คํธ ํด๋์ค์ ๊ณต์ฉ ํํธ ์ถ์ ํด๋์ค๋ก ๋ถ๋ฆฌ * fix : ์ต์ ์ฌํญ ๋ฐ์ * fix/OPS-222 : ํ ์คํธ ์ฝ๋์์ ํ์ ๋ค๋ฅด๋ ๊ฑฐ ์์ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๊ตฌํ * feat/OPS-222 : space ๋จ์ ํธ๋ค๋ฌ, ์ปค์คํ ์๋ฌ ์์ฑ * fix/OPS-222 : controller ์์ฑ ํ ์คํธ ํต๊ณผ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๋ก์ง ์์ฑ * feat/OPS-222 : ์คํ์ด์ค ์ญ์ ๊ตฌํ * fix/OPS-222 : ํ ์คํธ ์ผ์ด์ค ํต๊ณผ * feat/OPS-245 : controller ๋จ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-245 : ์คํ์ด์ค ๋ช ๋ณ๊ฒฝ ๊ตฌํ * fix/OPS-244 : ์ด๋ฆ ๋ณ๊ฒฝ ์ saveAndFlush๋ก ์ฆ์ ๋ฐ์ * chore/OPS-222 : develop ์ต์ ์ฌํญ ๋ฐ์ * fix : ์ ์ฅ * fix/OPS-222 : globalExceptionHandler ์ปจ๋ฒค์ ํต์ผ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ controller ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-244 : membership ๊ด๋ฆฌ ๋น ์์ฑ * feat/OPS-244 : membership ์์ฑ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ฑ * fix : ํ ์คํธ ์ผ์ด์ค ๊ฐ ์ถฉ๋ ํด๊ฒฐ ์ค * fix : ์ต์ ์ฌํญ ๋ฐ์ * ์์์ ์ฅ * ์ด๊ธฐ ์ํ * fix : ๋ฏธ๋ด์ฑ ์ ์ฉ * feat/OPS-244 : ์คํ์ด์ค ๋ฉค๋ฒ ์ถ๊ฐ ๊ธฐ๋ฅ * fix : spaceControllerTest์ memberControllerTest ๊ฐ ์ถฉ๋ ํด๊ฒฐ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * chore/OPS-244 : ์ธ์ฆ ๊ด๋ จ ์ฝ๋ ์ฃผ์ ์ฒ๋ฆฌ * feat/OPS-270 : ์คํ์ด์ค ๋ก์ง์ ์ฌ์ฉ์ ์ ๋ณด ์ฒดํฌ ์ถ๊ฐ * feat/OPS-22 : ํ ์คํธ ์ผ์ด์ค์ WithUserDetails ๋ฐ์ * feat/OPS-222 : ์ธ์ฆ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * fix : ๋ถํ์ํ ์ฃผ์ ์ญ์ * fix : ๋ถํ์ํ ํ์ผ ์ญ์ --------- Co-authored-by: EpicFn <[email protected]> * Ops 272 be feat ์๋ฃ ์ด๋ฆ ์กฐํ (#31) * feat/OPS-211 : ํด๋ ์ด๋ฆ ๋ณ๊ฒฝ ๊ตฌํ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * feat/OPS-272 : ํด๋/ํ์ผ ์กฐํ ๊ตฌํ * refactor/OPS-272 : tag ์์ฑ์ ์ถ๊ฐ * feat/OPS-195 : ๋ด์ค ๋ชฉ๋ก ์กฐํ ๊ธฐ๋ฅ ๊ตฌํ(์ต์ ๋ด์ค, ํค์๋ ๊ธฐ๋ฐ). ์๋น์ค ํ ์คํธ ์ถ๊ฐ. (#33) * refactor/OPS-277 : default ํด๋ ์๋ ์์ฑ (#34) * [chore/OPS-278] Auth, Member, News ๋๋ฉ์ธ ๋ฌธ์ํ ๋ฐ ๊ณ ๋ํ. (#35) * chore/OPS-278 : Auth ๋๋ฉ์ธ ๋ฌธ์ํ ์๋ฃ & ApiV1MemberController ์ถ๊ฐ ๊ธฐ๋ฅ ๊ตฌํ. * refactor/OPS-278 : ApiV1MemberController ์ถ๊ฐ ์ฌํญ์ ๋ง๊ฒ ํ ์คํธ ์ถ๊ฐ ๊ตฌํ. * refactor/OPS-278 : Member ์์ฑ ์, ๋๋คํ UUID์ ์ 5๊ธ์๋ฅผ ํ๊ทธ๋ก ์ฌ์ฉํ๋๋ก ๋ณ๊ฒฝ. * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- Co-authored-by: EpicFn <[email protected]> * refactor/OPS-283 : datasource ์ํฐํฐ ์์ (#39) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * [feat/OPS-175] ์น ํฌ๋กค๋ง ๋ฐ์ดํฐ ์ ์ ํ ๊ธฐ๋ฅ ๊ตฌํ (#41) * feat/OPS-175 : ์น ํฌ๋กค๋ง ๋ฐ์ดํฐ ์ ์ ํ ๊ธฐ๋ฅ ๊ตฌํ * [refactor/OPS-287] News ๋๋ฉ์ธ ๊ณ ๋ํ (#42) * refactor/OPS-287 : newsSearch ๋ฉ์๋ ๋ก์ง ๋ณ๊ฒฝ ๋ฐ ์ผ๋ถ API ๋ฌธ์ํ. * refactor/OPS-287 : NewsServiceTest API๋ฅผ ํธ์ถํ๋ ๋ฐฉ์์ผ๋ก ๋ณ๊ฒฝ. * Ops 226 be feat ์๋ฃ ๋ฑ๋ก (#44) * refactor/OPS-283 : datasource ์ํฐํฐ ์์ * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- Co-authored-by: EpicFn <[email protected]> * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * feat/OPS-226 : ์๋ฃ ๋ฑ๋ก ๊ตฌํ * refactor/OPS-226 : ๋ฉ์๋ ๋ช ์์ --------- Co-authored-by: Hyeok Jin Kim <[email protected]> Co-authored-by: EpicFn <[email protected]> * Ops 215 be feat ์๋ฃ ์ญ์ (#46) * refactor/OPS-283 : datasource ์ํฐํฐ ์์ * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- Co-authored-by: EpicFn <[email protected]> * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * feat/OPS-226 : ์๋ฃ ๋ฑ๋ก ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ --------- Co-authored-by: Hyeok Jin Kim <[email protected]> Co-authored-by: EpicFn <[email protected]> * [feat/OPS-293] LiveBlocks๋ฅผ ์ํ React-flow ๋ฐ์ดํฐ ๊ด๋ฆฌ ๋๋ฉ์ธ ์ค๊ณ ์๋ฃ. ํ ์คํธ ์ถ๊ฐ. (#47) * feat/OPS-293 : LiveBlocks๋ฅผ ์ํ React-flow ๋ฐ์ดํฐ ๊ด๋ฆฌ ๋๋ฉ์ธ ์ค๊ณ ์๋ฃ. ํ ์คํธ ์ถ๊ฐ. * feat/OPS-293 : folder ํ ์คํธ์ @transactional ์ถ๊ฐ. * feat/OPS-293 : MemberServiceTest ์์ #1 * feat/OPS-293 : MemberServiceTest ์์ #2 * feat/OPS-293 : Folder ํ ์คํธ์ ActiveProfile(test) ์ถ๊ฐ. * feat/OPS-293 : ํ ์คํธ์ ๋ฌด๊ฒฐ์ฑ ๊ฒ์ฆ์ ์ํ @afterall, @AfterEach ์ถ๊ฐ. * feat/OPS-293 : ์ผ๋ถ ์์ . * feat/OPS-293 : ์ง์ง ๋ง์ง๋ง ์์ . * [chore/ops-132] CI/CD ํ์ดํ๋ผ์ธ ๊ตฌ์ถ (#43) * chore/OPS-133 : CI ํ์ดํ๋ผ์ธ ๊ตฌ์ถ * chore: ํ ์คํธ/์ด์ ํ๊ฒฝ์ฉ GitHub Actions Terraform ์๋ ์ธํ๋ผ ์ ์ฉ ์ํฌํ๋ก์ฐ ์ถ๊ฐ * chore : ํ๊ฒฝ๋ณ์๋ก test/prod ์๋ฒ ๋ถ๋ฆฌ ๊ฐ๋ฅํ๋๋ก ์ค์ * chore/OPS-135 : CD ์ํฌํ๋ก์ฐ ์ถ๊ฐ * chore: CI ํ CD ์คํ๋๋๋ก ์ค์ * chore : CI ์ํฌํ๋ก์ฐ job ๋ถ๋ฆฌ(ํ ์คํธ,๋น๋/๋์ปค ๋น๋,ghcr push) * chore : docker build jobs์์ checkout ๋จ๊ณ ์ถ๊ฐ * chore: CI ์ํฌํ๋ก์ฐ job ๊ตฌ๋ถ ์์ฐ * chore : develop/main ๋ธ๋์น์ ๋ฐ๋ผ CI/CD ์ํฌํ๋ก์ฐ ๋ถ๋ฆฌ * chore : Spring Boot Acutator ์์กด์ฑ ์ถ๊ฐ * chore: Actions์์ SSH ์ ์ ํ docker ์คํ ๊ถํ ๊ฐ๋๋ก ์ค์ * chore: ์ปจํ ์ด๋ ์คํ ๋ก๊ทธ ํฐ๋ฏธ๋์ ์ถ๋ ฅ ์ค์ * chore : ํฌ์ค์ฒดํฌ ์ค์ * chore: secrets ์ง์ ssh ํ๊ฒฝ ๋ณ์๋ก ์ ๋ฌ * chore: ํ๊ฒฝ๋ณ์ ์ง์ docker run์ ๋ฃ๊ธฐ * chore: spdocker run ์์ ring profile ์ ๊ฑฐ * chore: nginx ์ค์ * chore: test-cd ์์ * chore: test-cd ์์ 2 * chore: ghcr ๋ก๊ทธ์ธ ํ ํฐ ์์ * chore: ๋์ปค ์ด๋ฏธ์ง pull ์ด๋ฆ ์์ * chore: ssh ๋ด ์์ ํ ghcr ๋ก๊ทธ์ธ * chore : ์ด๋ฏธ pullํ ์ด๋ฏธ์ง์ run ์ด๋ฏธ์ง ์ด๋ฆ ์ผ์น์ํค๊ธฐ * chore: mysql driver ์์กด์ฑ ์ถ๊ฐ * chore : ํฌ์ค์ฒดํฌ ์์ฒญ ์คํ๋ง ์ํ๋ฆฌํฐ ํํฐ์ ๊ฑธ๋ฆฌ์ง ์๋๋ก ์ค์ * chore: nginx ํฌํธ ์ค์์นญ ์ค์ * chore: nginx ํฌํธ ์ค์์นญ ์ค์ ์์ * chore: nginx ํฌํธ ์ค์์นญ ์ค์ ์์ 2 * chore: ์ด์์๋ฒ CD ์ํฌํ๋ก์ฐ ์์ * chore : prod-server ์ํฌํ๋ก์ฐ ํ์ฑํ ๊ฒฝ๋ก ์ค์ * chore : test commit ๋์ค์ ์ง์ฐ๊ธฐ * [Feat/OPS-214] ์คํ์ด์ค ๋ฉค๋ฒ ๊ด๋ฆฌ (#50) * feat/OPS-227 : ์คํ์ด์ค ๋ฉค๋ฒ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-227 : ์คํ์ด์ค ๋ชฉ๋ก ๋ฐํ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-251 : ๊ถํ ๋ณ๊ฒฝ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-214 : ๊ถํ ๋ณ๊ฒฝ ์๋ํฌ์ธํธ ๊ตฌํ * fix/OPS-214 : ๋จ์ ๋ฉ์ธ์ง ์ค๋ฅ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-214 : ๋ก์ง ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-251 : globalExceptionHandler์ ์ญ์ง๋ ฌํ ์คํจ ์๋ฌ ์ถ๊ฐ * refactor/OPS-214 : ๋น์ฆ๋์ค ๋ก์ง์ ์๋น์ค ๊ณ์ธต์ ์ผ์ * feat/OPS-231 : ์คํ์ด์ค ์ด๋ ์ปจํธ๋กค๋ฌ ํ ์คํธ์ผ์ด์ค ์์ฑ * feat/OPS-231 : ์คํ์ด์ค ์ด๋ ๋ก์ง ์์ฑ * feat/OPS-231 : ์คํ์ด์ค์ด๋ ์๋น์ค ๋น ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * feat/OPS-228 : ํ์ ํด์ถ ์ปจํธ๋กค๋ฌ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feeat/OPS-229 : ํ์ ํด์ถ ๊ตฌํ ์๋ฃ * fix : ๊ธฐ์กด ํ ์คํธ ์ผ์ด์ค ์ผ๊ด์ฑ ์๊ฒ ์์ * feat : ๋ฉค๋ฒ ํด์ถ ์๋น์ค ํ ์คํธ ์ฝ๋ ์์ฑ * refactor : DTO ํจํค์ง ๋ณ๊ฒฝ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ์ปจํธ๋กค๋ฌ ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ๋ก์ง ์์ฑ * refactor : space ๋๋ฉ์ธ dto ํจํค์ง ๋ณ๊ฒฝ * feat/OPS-227 : ์คํ์ด์ค ๋ฉค๋ฒ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-227 : ์คํ์ด์ค ๋ชฉ๋ก ๋ฐํ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-251 : ๊ถํ ๋ณ๊ฒฝ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-214 : ๊ถํ ๋ณ๊ฒฝ ์๋ํฌ์ธํธ ๊ตฌํ * fix/OPS-214 : ๋จ์ ๋ฉ์ธ์ง ์ค๋ฅ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-214 : ๋ก์ง ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-251 : globalExceptionHandler์ ์ญ์ง๋ ฌํ ์คํจ ์๋ฌ ์ถ๊ฐ * refactor/OPS-214 : ๋น์ฆ๋์ค ๋ก์ง์ ์๋น์ค ๊ณ์ธต์ ์ผ์ * feat/OPS-231 : ์คํ์ด์ค ์ด๋ ์ปจํธ๋กค๋ฌ ํ ์คํธ์ผ์ด์ค ์์ฑ * feat : ์ต์ ์ฌํญ ๋ฐ์ * feat/OPS-231 : ์คํ์ด์ค์ด๋ ์๋น์ค ๋น ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * feat/OPS-228 : ํ์ ํด์ถ ์ปจํธ๋กค๋ฌ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feeat/OPS-229 : ํ์ ํด์ถ ๊ตฌํ ์๋ฃ * fix : ๊ธฐ์กด ํ ์คํธ ์ผ์ด์ค ์ผ๊ด์ฑ ์๊ฒ ์์ * feat : ๋ฉค๋ฒ ํด์ถ ์๋น์ค ํ ์คํธ ์ฝ๋ ์์ฑ * refactor : DTO ํจํค์ง ๋ณ๊ฒฝ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ์ปจํธ๋กค๋ฌ ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ๋ก์ง ์์ฑ * refactor : space ๋๋ฉ์ธ dto ํจํค์ง ๋ณ๊ฒฝ --------- Co-authored-by: EpicFn <[email protected]> * refactor/OPS-308 : ๋๋ฉ์ธ ๋ถ๋ฆฌ & CI ์ํฌํ๋ก์ฐ์ application-secrets-server.yml ์ถ๊ฐ. (#52) * Ops 255 be feat ์๋ฃ ์์ (#54) * refactor/OPS-283 : datasource ์ํฐํฐ ์์ * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- Co-authored-by: EpicFn <[email protected]> * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * feat/OPS-226 : ์๋ฃ ๋ฑ๋ก ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-255 : ์๋ฃ ์ด๋ ๋ฐ ์์ ๊ตฌํ --------- Co-authored-by: Hyeok Jin Kim <[email protected]> Co-authored-by: EpicFn <[email protected]> * feat/OPS-289 : dataprocessor ์๋น์ค ์์ฑ (#59) * fix/OPS-318 : proxy host ์ค์์นญรฌ๏ฟฝ ssl ์ธ์ฆ์ ์ ์ง (#60) * [refactor/OPS-310] redirect url ๋ณ๊ฒฝ (#53) * refactor/OPS-310 : redirect-url ๋ณ๊ฒฝ. * refactor/OPS-310 : ์์ ์์ . * refactor/OPS-310 : ๋ ํ๋์ ์์ ์์ . * refactor/OPS-310 : ํฐ ์์ . * refactor/OPS-310 : ํ ์คํธ * refactor/OPS-310 : ์์ฒญ ์ฌํญ ๋ฐ์. * refactor/OPS-310 : ์์ฒญ ์ฌํญ ๋ฐ์ #2 * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ (#64) * [refactor/OPS-323] News API ์กฐํ ๋ก์ง ์์ . (#65) * ๋ฐฐํฌ ํ ์คํธ #2 * ๋ก์ง ์์ ํ ์คํธ * ๋ก์ง ์์ ํ ์คํธ #2 * refactor/OPS-322 : source ์นผ๋ผ๋ช ์์ (#68) * refactor/OPS-322 : source ์นผ๋ผ๋ช ์์ * refactor/OPS-322 : source ์นผ๋ผ๋ช ์์ * feat/OPS-321 : dataProcessorService์์ ์์ฝ ๋ก์ง ์์ฑ (#69) * [fix/OPS-317] CI/CD ํ์ดํ๋ผ์ธ ์ด๋ฒคํธ ๋ถ๋ฆฌ (#66) * fix : prod-server nginx ์ ๋ณด ์ถ๋ ฅ ์ ๊ฑฐ * fix : prod-server CD ์ํฌํ๋ก์ฐ main์ push๋ ๋ ์คํ๋๋๋ก ์์ * fix : test-server CI๋ pr์ develop์ ์คํ, CD๋ push๋ ๋ ์คํ * fix : test-server CI ์ํฌํ๋ก์ฐ์์ CD ๋ถ๋ถ ์ ๊ฑฐ * chore : ๋น๋์ aws๊ด๋ จ ์ ๋ณด application-secret.yml์ ๋ค์ด๊ฐ๋๋ก ์ค์ (#73) * chore : S3 ์ฌ์ฉ์ ์ํด ๋น๋์ AWS ์ ๋ณด application-secrets.yml์ ์ถ๊ฐ๋๋๋ก ์ค์ * chore : ์ญํ ์ S3 ์ ๊ทผ ์ ์ฑ ๋ถ์ฐฉ ํ๋๋ก ์ค์ * chore : รฃyml์ ์ถ๊ฐ์ ๋ณด ๋ฃ๋๋ก ์ค์ * [Feat/OPS-275] ์คํ์ด์ค ์ธ๋ค์ผ ์ด๋ฏธ์ง ์ ์ฅ (#71) * chore : S3 ํ๊ฒฝ ์ค์ * feat : S3Service ๊ตฌ์ฑ * chore : multipart ๋ฐ์ดํฐ ํฌ๊ธฐ ์ค์ * feat : S3 ์ ๋ก๋ ํ ์คํธ์ฉ ์๋ํฌ์ธํธ ์์ฑ * feat : S3 ์ฐ๋ ์๋ฃ * feat : space entity์ imageUrl ํญ๋ชฉ ์ถ๊ฐ * feat : ์ธ๋ค์ผ ์บก์ฒ ํ ์คํธ์ฉ * feat : ์ธ๋ค์ผ ์ดฌ์ ํ ์คํธ ์๋ํฌ์ธํธ ์์ฑ * feat : ์คํ์ด์ค ์ธ๋ค์ผ ๊ฐฑ์ API ์์ฑ * feat : ์คํ์ด์ค ์ด๋ฏธ์ง ๊ฐฑ์ ๊ธฐ๋ฅ ์์ฑ * feat : ์คํ์ด์ค ๋ชฉ๋ก ๋ฐํ ์ ์ธ๋ค์ผ url ๊ฐ์ด ๋ฐํ * feat : ์คํ์ด์ค ๋จ๊ฑด ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat : ์คํ์ด์ค ๋จ๊ฑด ์กฐํ ๊ตฌํ * feat : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ํ์ด์ง ๊ธฐ๋ฅ ์ถ๊ฐ --------- Co-authored-by: EpicFn <[email protected]> * [feat/OPS-324] ํฌ๋กฌ ํ์ฅ ํ๋ก๊ทธ๋จ ์์ ๋ก๊ทธ์ธ ๋ถ๊ธฐ & ์์ ๋ก๊ทธ์ธ ํ ์คํธ API ์ถ๊ฐ. (#70) * feat/OPS-324 : ํ์ฅ ํ๋ก๊ทธ๋จ ๋ถ๊ธฐ ๋ฐ ์์ ๋ก๊ทธ์ธ ํ ์คํธ API ์ถ๊ฐ. * feat/OPS-324 : ํ ์คํธ ๋ก์ง ์ผ๋ถ ์์ . * feat/OPS-324 : ํ ์คํธ ๋ก์ง ์ผ๋ถ ์์ . #2 * feat/OPS-324 : ํ ์คํธ ์๋ฃ, ํ ์คํธ ์ฝ๋ ์ ๊ฑฐ. * feat/OPS-324 : ๋ก๊ทธ์ธ ๋ถ๊ธฐ ์์ . * feat/OPS-324 : state ์ ๋ณด๋ฅผ ์ ์ฅํ๋ resolver ์ถ๊ฐ. * feat/OPS-324 : session ๋ฑ๋ก์ ์ํ OAuth2LoginSourceFilter ํด๋์ค ์ถ๊ฐ. * feat/OPS-324 : ํด๊ฒฐ * fix : ci ์ secrets ์์ S3 ๊ด๋ จ ์ํฌ๋ฆฟ ๊ฐ ์ญ์ ํ๋๋ก ๋ณ๊ฒฝ(๋ฒํท๋ช ์ ์ธ) (#74) * fix : ci ์ secrets ์์ S3 ๊ด๋ จ ์ํฌ๋ฆฟ ๊ฐ ์ญ์ ํ๋๋ก ๋ณ๊ฒฝ(๋ฒํท๋ช ์ ์ธ) * fix : CI ์คํ ์์ * fix : build ๋จ๊ณ์์ testest๋ฅผ ์ํํ์ง ์๋๋ก ๋ณ๊ฒฝ --------- Co-authored-by: EpicFn <[email protected]> * [feat/OPS-198] ์์นด์ด๋ธ ์ ๋ณด๋ก ๋ด์ค ๋ชฉ๋ก ์กฐํ (#75) * feat/OPS-198 : ์์นด์ด๋ธ ๊ธฐ๋ฐ ๋ด์ค ์กฐํ ๊ตฌํ. * feat/OPS-198 : ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ. * feat/OPS-265 : LLM-ํ์ฉ-๋ฐ์ดํฐ-์ ์ ํ-์-๊ธฐ์กด-์์นด์ด๋ธ์-ํ๊ทธ-์ฐ๋ (#77) * refactor/OPS-319: ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ (#76) * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * fix : SpringDoc๊ณผ Spring AI ๊ฐ ์์กด์ฑ ์ถฉ๋ ํด๊ฒฐ (#79) * [Feat/OPS-327] ์๋ฃ ๋ฑ๋ก llm ์ฐ๋ (#78) * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-327 : ์๋ฃ ๋ฑ๋ก LLM ์ฐ๋ * [feat/OPS-328] ์ธ์ฆ/์ธ๊ฐ ๋ก์ง ๋ณ๊ฒฝ (#80) * feat/OPS-328 : RefreshToken์ ์๋ฒ์์ ์ ์ฅํ๋๋ก ๋ณ๊ฒฝ. API ์ผ๋ถ ์์ . * feat/OPS-328 : ํ์ฅ ํ๋ก๊ทธ๋จ ๋ก๊ทธ์ธ ๋ฉ์๋ ์ถ๊ฐ ๋ฐ ๋ฐ์ดํฐ ์บ์ฑ ๋ฉ์๋ ์ถ๊ฐ. * [refactor/OPS-337] ์๊ตฌ์ฌํญ ๋ฐ์ ๋ฐ ์ผ๋ถ ๋ก์ง ์์ . (#81) * refactor/OPS-337 : ํ๋ก ํธ ์๊ตฌ์ฌํญ ๋ฐ์ ๋ฐ ์๋ฌ ์์ . * refactor/OPS-337 : ํ ์คํธ ์ผ์ด์ค ์์ . * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ (#82) * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : mock ์ถ๊ฐ๋ก ์ธํ testcase ์์ * [feat/OPS-338] ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ (#83) * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : mock ์ถ๊ฐ๋ก ์ธํ testcase ์์ * refactor/OPS-338 : Dev ํ ํฐ ๋ฐ๊ธ ์ปจํธ๋กค๋ฌ ์ถ๊ฐ * [Feat/OPS-326] ๋์๋ณด๋ ๋ฐ์ดํฐ ์ ์ฅ ์ฒด๊ณ ๊ตฌ์ถ (#85) * refactor : graph ๋๋ฉ์ธ์ dashboard ๋๋ฉ์ธ์ผ๋ก ์์ , dashboard ์ํฐํฐ ์์ฑ * feat : ์คํ์ด์ค ๋จ๊ฑด ์กฐํ ์ ๋์๋ณด๋ id๋ ํจ๊ป ๋ฐํ * refactor : API ๋ช ๋ณ๊ฒฝ * dashboard ๊ธฐ๋ฐ์ผ๋ก ์ ์ฅ/์กฐํ ๋๋๋ก ๋ณ๊ฒฝ * refactor : ํ ์คํธ ์ฝ๋ ์์ * fix : ๋ฐํ ๋ฉ์ธ์ง ์์ * feat : ์๋ช ๊ฒ์ฆ ๋ก์ง ๊ตฌํ * refactor : signature ์๋น์ค ๋ถ๋ฆฌ * fix : ์คํ ์์ * fix : CI ํ์ดํ๋ผ์ธ ์์ --------- Co-authored-by: EpicFn <[email protected]> * [feat/OPS-329] Sentry๋ฅผ ํตํ ๋ชจ๋ํฐ๋ง ํ๊ฒฝ ๊ตฌ์ถ. (#86) * feat/OPS-329 : Sentry๋ฅผ ํตํ ๋ชจ๋ํฐ๋ง ํ๊ฒฝ ๊ตฌ์ถ. * feat/OPS-329: ์ถ๊ฐ๋ก ํ๋ก ํธ ์๊ตฌ ์ฌํญ ๋ฐ์. * refactor/OPS-353 : ๋ถ๋ฆฌ ์๋ฃ. (#87) * [refactor/OPS-354] ํ ์คํธ ์ผ์ด์ค ์ฌ์ฉ ํ๋กํ ๋ณ๊ฒฝ. (#88) * refactor/OPS-354 : ํ ์คํธ ์ผ์ด์ค ์ฌ์ฉ ํ๋กํ ๋ณ๊ฒฝ. * refactor/OPS-354 : ์ด๋๋ ์๋ผ? * refactor/OPS-355 : ์๊ตฌ ์ฌํญ ๋ฐ์. (#91) * feat/OPS-358: Redis ์์กด์ฑ ์ถ๊ฐ ๋ฐ RedisConfig ์ค์ ์๋ฃ. AuthResultData ์ง๋ ฌํ ๋ฐ AuthResult ํด๋์ค์ TTL ๋์ . (#92) * feat/OPS-356 : ๋ค์ด๋ฒ ๋ธ๋ก๊ทธ ํฌ๋กค๋ฌ ์์ฑ (#93) * [feat/OPS-252] ์กฐ๊ฑด๋ณ ์๋ฃ ๊ฒ์ (#89) * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-327 : ์๋ฃ ๋ฑ๋ก LLM ์ฐ๋ * refactor/OPS-252 : ์กฐ๊ฑด๋ณ ์๋ฃ ๊ฒ์ ๊ตฌํ * refactor/OPS-252 : ์กฐ๊ฑด๋ณ ์๋ฃ ๊ฒ์ * fix : ์คํ์ด์ค, ์ฌ์ฉ์ ๋ชฉ๋ก ๋ฐํ ์ ํญ์ id ์ค๋ฆ์ฐจ์ ์ ๋ ฌ (#94) Co-authored-by: EpicFn <[email protected]> * IllegalStateException(๋์์ฑ ๋ฌธ์ )๊ด๋ จ ์ฒ๋ฆฌ ๋ฉ์๋ ์ถ๊ฐ. (#95) * [fix/OPS-362] ์๊ตฌ ์ฌํญ ๋ฐ์ (#96) * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์. * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#2 * [feat/OPS-341] ๋ฒจ๋ก๊ทธ ํฌ๋กค๋ฌ ์์ฑ (#90) * feat/OPS-341 : Velog ํฌ๋กค๋ฌ ์์ฑ * fix : createDate,modifyDate ์๋ ์ ์ฉ๋๋๋ก ์ค์ * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#3 (#97) * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#4 (#98) * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#5 (#99) * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#6 (#100) * [refactor/OPS-360] folder&datasource ๋ฆฌํํ ๋ง (#101) * refactor/OPS-360 : OpenAPI ์ ๋ํ ์ด์ ์ถ๊ฐ * refactor/OPS-360 : NoResultException ์์ธ ๋ถ๋ฆฌ * refactor/OPS-360 : param ์ถ๊ฐ * refactor/OPS-360 : param ์ถ๊ฐ * refactor/OPS-360 : default ํด๋ CRUD ๋ก์ง ์์ * refactor/OPS-360 : ํด๋ ๋ฆฌ์คํธ๋ ํธ์ถ ๋ก์ง ์์ * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#7 (#102) * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#8 (#103) * hotfix/OPS-346 : ํ์ผ ์กฐํ ์์ (#104) * [feat/OPS-365 ] soft delete + ํด์งํต ์กฐํ ๊ตฌํ (#105) * feat/OPS-365 : soft delete + ํด์งํต ์กฐํ ๊ตฌํ * refactor/OPS-246 : ์๊ตฌ์ฌํญ ๋ฆฌํฉํ ๋ง * chore : rabbitmq ํ๊ฒฝ์ค์ (#106) * chore : rabbitmq ๋ก์ปฌ ๊ฐ๋ฐ ํ๊ฒฝ ์ค์ * chore : rabbitmq ๊ด๋ จ springboot ํ๊ฒฝ ์ค์ * chore: rabbitmq ์์กด์ฑ ์ถ๊ฐ * [Feat/OPS-344] message queue ๊ตฌํ (#107) * chore : RabbitMQ ํ๊ฒฝ ์ค์ * chore : CI ํ์ดํ๋ผ์ธ์์ RabbitMQ ์ปจํ ์ด๋๋ฅผ ๋์์ ์ฌ์ฉํ๋๋ก ์ค์ * new : RabbitMQ ์ค์ ํด๋์ค, dto ์์ฑ * feat : producer method ์์ฑ * feat : ๋ฉ์ธ์ง ํ ๊ตฌํ ์๋ฃ * feat : ๋ฐ์ดํฐ ์ ์ฅ ์์ฒญ ํ ์คํธ ์ผ์ด์ค ์์ * feat : ConsumerTest ์ฝ๋ ์ถ๊ฐ * fix : ์ ์ฅ ํ ์คํธ ์ผ์ด์ค ์ฑ๊ณต * fix : ํ ์คํธ ์ฝ๋ ์์ ์ค * fix : ํ ์คํธ ์ผ์ด์ค ์ฑ๊ณต * feat : dlq ๋์ * feat : ๋ฐ์ดํฐ ์์ ๋ณด์ฅ์ ์ํด version ์ถ๊ฐ * refactor : MQConfig ํ์ผ ์์น ๋ณ๊ฒฝ * chore : RabbitMQ ํ๊ฒฝ ์ค์ # Conflicts: # docker-compose.yml # src/main/resources/application.yml * chore : CI ํ์ดํ๋ผ์ธ์์ RabbitMQ ์ปจํ ์ด๋๋ฅผ ๋์์ ์ฌ์ฉํ๋๋ก ์ค์ * new : RabbitMQ ์ค์ ํด๋์ค, dto ์์ฑ * feat : producer method ์์ฑ * feat : ๋ฉ์ธ์ง ํ ๊ตฌํ ์๋ฃ * feat : ๋ฐ์ดํฐ ์ ์ฅ ์์ฒญ ํ ์คํธ ์ผ์ด์ค ์์ * feat : ConsumerTest ์ฝ๋ ์ถ๊ฐ * fix : ์ ์ฅ ํ ์คํธ ์ผ์ด์ค ์ฑ๊ณต * fix : ํ ์คํธ ์ฝ๋ ์์ ์ค * fix : ํ ์คํธ ์ผ์ด์ค ์ฑ๊ณต * feat : dlq ๋์ * feat : ๋ฐ์ดํฐ ์์ ๋ณด์ฅ์ ์ํด version ์ถ๊ฐ * refactor : MQConfig ํ์ผ ์์น ๋ณ๊ฒฝ * fix : ์ต์ ์ฌํญ ๋ฐ์ * fix : copilot review ๋ฐ์ * feat : Dashboard์์ graph ์ฐธ์กฐ ๋ฐฉ์ EAGER -> LAZY ๋ก ๋ณ๊ฒฝ * CI ์คํจํด์ ๋ค์ EAGER๋ก ๋ณ๊ฒฝ * fix : ๋ค์ LAZY๋ก ๋ณ๊ฒฝ --------- Co-authored-by: EpicFn <[email protected]> * [Refactor/OPS-373] ์๋ฃ ์กฐํ ๊ฒ์ ์๊ตฌ์ฌํญ ์์ (#108) * refactor/OPS-373 : ์๋ฃ ์ด๋ฆ unique ์์ฑ ์ญ์ * refactor/OPS-373 : ์๋ฃ ์์ ๊ฐ๋ฅ ์นผ๋ผ ์ถ๊ฐ * refactor/OPS-373 : ๋ช ์์ null๊ณผ ๋ฏธ์ ๋ฌ ๊ตฌ๋ถ * [Feat/OPS-376] ์คํ์ด์ค ๋ชฉ๋ก ์ฐธ์ฌ ์ธ์ ๋ฐํ api ๊ตฌ์ฑ (#109) * refactor : dto ์ด๋ฆ ์ผ๋ถ ๋ณ๊ฒฝ * feat : ๊ตฌํ ์๋ฃ * feat : ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * fix : ํ ์คํธ ์ผ์ด์ค ์์ --------- Co-authored-by: EpicFn <[email protected]> * [Refactor/OPS-290] ๋ฐ์ดํฐ์์ค ์ ์ ํ ๊ธฐ๋ฅ ๊ณ ๋ํ (#112) * refactor/OPS-290 : ๋ฐ์ดํฐ์์ค ์ ์ ํ ๊ธฐ๋ฅ ๊ณ ๋ํ * [Feat/OPS-346] ๊ณต์ ํด๋ ๊ด๋ฆฌ (#113) * refactor/OPS-360 : OpenAPI ์ ๋ํ ์ด์ ์ถ๊ฐ * refactor/OPS-360 : NoResultException ์์ธ ๋ถ๋ฆฌ * refactor/OPS-360 : param ์ถ๊ฐ * refactor/OPS-360 : param ์ถ๊ฐ * refactor/OPS-360 : default ํด๋ CRUD ๋ก์ง ์์ * refactor/OPS-360 : ํด๋ ๋ฆฌ์คํธ๋ ํธ์ถ ๋ก์ง ์์ * refactor/OPS-346 : ๊ณต์ ํด๋ ๊ด๋ฆฌ * feat/OPS-365 : soft delete + ํด์งํต ์กฐํ ๊ตฌํ * feat/OPS-346 : ๊ณต์ ํด๋ ๊ด๋ฆฌ * feat/OPS-346 : ๊ณต์ ํด๋ ๊ด๋ฆฌ * refactor/OPS-346 : ๊ฐ์ธ / ๊ณต์ ํณ๋ ๊ด๋ฆฌ ๋ถ๋ฆฌ * refactor/OPS-346 : ๊ฒ์ ๊ธฐ๋ฅ ์ถ์ฒ ๋๋ฝ ์์ * feat : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ์ ์์ฑ ์ผ์๋ ๋ฐํ (#114) Co-authored-by: EpicFn <[email protected]> * [feat/OPS-377] ์ด์/ํ ์คํธ ์๋ฒ ๋ถ๋ฆฌ ์์ (#115) * feat/OPS-377 : ํ ์คํธ/์ด์ ํ๊ฒฝ ๋ถ๋ฆฌ * feat/OPS-377 : ํ ์คํธ/์ด์ ํ๊ฒฝ ๋ถ๋ฆฌ #2 * feat/OPS-377 : ํ ์คํธ/์ด์ ํ๊ฒฝ ๋ถ๋ฆฌ #3 * feat/OPS-377 : ํ ์คํธ/์ด์ ํ๊ฒฝ ๋ถ๋ฆฌ #4 * [Fix/OPS-378] ๋์๋ณด๋ ํ์ entity ์์ (#117) * fix : node, edge dto ์์ * fix : ํ ์คํธ ์ผ์ด์ค ์์ * fix : ํ ์คํธ ์์ ์๋ฃ * fix : ์คํ ์์ * fix : ์คํ ์ถ๊ฐ ์์ ; --------- Co-authored-by: EpicFn <[email protected]> * [Feat/OPS-379] liveblocks ์ฐ๋ (#118) * new : Liveblock API ํธ์ถ์ ์ํ Client ๋น ์์ฑ * feat : ์คํ์ด์ค ์์ฑ/์ญ์ ์ liveblocks room ๋ ํจ๊ป ์์ฑ/์ญ์ * fix : test ์ mock ๋น ์ฌ์ฉ * feat : jwt ๋ฐ๊ธ ๋ก์ง ๊ตฌํ --------- Co-authored-by: EpicFn <[email protected]> * [Feat/OPS-246] ๊ณต์ ํ์ผ ๊ด๋ฆฌ (#119) * refactor/OPS-360 : OpenAPI ์ ๋ํ ์ด์ ์ถ๊ฐ * refactor/OPS-360 : NoResultException ์์ธ ๋ถ๋ฆฌ * refactor/OPS-360 : param ์ถ๊ฐ * refactor/OPS-360 : param ์ถ๊ฐ * refactor/OPS-360 : default ํด๋ CRUD ๋ก์ง ์์ * refactor/OPS-360 : ํด๋ ๋ฆฌ์คํธ๋ ํธ์ถ ๋ก์ง ์์ * refactor/OPS-346 : ๊ณต์ ํด๋ ๊ด๋ฆฌ * feat/OPS-365 : soft delete + ํด์งํต ์กฐํ ๊ตฌํ * feat/OPS-346 : ๊ณต์ ํด๋ ๊ด๋ฆฌ * feat/OPS-346 : ๊ณต์ ํด๋ ๊ด๋ฆฌ * feat/OPS-246 : ๊ณต์ ํ์ผ ๊ด๋ฆฌ * refactor/OPS-346 : ๊ฐ์ธ / ๊ณต์ ํณ๋ ๊ด๋ฆฌ ๋ถ๋ฆฌ * refactor/OPS-346 : ๊ฐ์ธ / ๊ณต์ ํ์ผ ๊ด๋ฆฌ ๋ถ๋ฆฌ * refactor/OPS-346 : ๊ฒ์ ๊ธฐ๋ฅ ์ถ์ฒ ๋๋ฝ ์์ * feat/OPS-246 : ๊ฐ์ธ / ๊ณต์ ํ์ผ ๊ด๋ฆฌ ๋ถ๋ฆฌ * feat/OPS-246 : api ์์ฒญ ์์ * feat/OPS-246 : api ์์ฒญ ์์ - request ์ด๋ฆ ํต์ผ * refactor/OPS-246 : ๋จธ์ง * refactor/OPS-246 : ๋จธ์ง * [Feat/OPS-388] ๋ค๊ฑด์ญ์ DELETE ๋ณธ๋ฌธ ์์ (#122) * refactor/OPS-388 : ๋ค๊ฑด์ญ์ DELETE ๋ณธ๋ฌธ ์์ * refactor/OPS-388 : ๋ค๊ฑด์ญ์ DELETE ํ ์คํธ ์ผ์ด์ค ์์ * Hotfix/์คํ์ด์ค์ด๋๋ชฉ๋ก ๋ฐํ ์ invite id ํฌํจ (#123) * fix : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์ inviteId ๋ฐํํ๋๋ก ๋ณ๊ฒฝ * fix : ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ --------- Co-authored-by: EpicFn <[email protected]> * [Feat/OPS-379] liveblocks ์ฐ๋ (#124) * new : Liveblock API ํธ์ถ์ ์ํ Client ๋น ์์ฑ * feat : ์คํ์ด์ค ์์ฑ/์ญ์ ์ liveblocks room ๋ ํจ๊ป ์์ฑ/์ญ์ * fix : test ์ mock ๋น ์ฌ์ฉ * feat : jwt ๋ฐ๊ธ ๋ก์ง ๊ตฌํ * fix : SpaceArchiveDataSourceControllerTest์์ liveblocks ๋น mock ์ฒ๋ฆฌ * fix : ์คํ ์์ --------- Co-authored-by: EpicFn <[email protected]> * refactor : secrets๊ฐ ์ปจํ ์ด๋ ์คํ์ ํ๊ฒฝ๋ณ์๋ก ์ฃผ์ ๋๋๋ก ์์ (#120) * refactor: ๋น๋ ์ secrets.yml ํ์ผ ์ญ์ * refactor : ํ ์คํธ ์๋ฒ ํ๊ฒฝ๋ณ์ ์ฃผ์ ์ค์ * refactor : ์ด์์๋ฒ ํ๊ฒฝ๋ณ์ ์ฃผ์ ์ค์ * refactor : ์ด์ํ๊ฒฝ๋ณ YML ๋ถ๋ฆฌ ๋ฐ ๋ฐฐํฌ ํ๊ฒฝ ์ค์ ๊ตฌ์กฐ ๊ฐ์ * refactor : ๋ก์ปฌ(dev,test).yml ๋ณต๊ตฌ * refactor : ๋น๋์ ํ ์คํธ secrets.yml V2๋ก ๋ณ๊ฒฝ * refactor: gradle ํ ์คํธ์ ํ๊ฒฝ๋ณ์๋ก ์ค์ ๊ฐ ์ฃผ์ * refactor: ymlํ์ผ ๋ค์ฌ์ฐ๊ธฐ ์์ * refactor: yml ํ๋ ์ด์คํ๋ ๋ค์ด๋ฐ ๊ท์น ์ผ๊ด์ฑ ์ ์งํ๋๋ก ์์ * [Feat/ops-379] feat liveblocks ์ฐ๋ (#127) * new : Liveblock API ํธ์ถ์ ์ํ Client ๋น ์์ฑ * feat : ์คํ์ด์ค ์์ฑ/์ญ์ ์ liveblocks room ๋ ํจ๊ป ์์ฑ/์ญ์ * fix : test ์ mock ๋น ์ฌ์ฉ * feat : jwt ๋ฐ๊ธ ๋ก์ง ๊ตฌํ * fix : SpaceArchiveDataSourceControllerTest์์ liveblocks ๋น mock ์ฒ๋ฆฌ * fix : ์คํ ์์ * new : Liveblock API ํธ์ถ์ ์ํ Client ๋น ์์ฑ # Conflicts: # src/main/java/org/tuna/zoopzoop/backend/global/clients/liveblocks/LiveblocksClient.java --------- Co-authored-by: EpicFn <[email protected]> * fix : ์คํ ์์ (#128) Co-authored-by: EpicFn <[email protected]> * [Hotfix] ํ์ดํ๋ผ์ธ ์คํ ์์ (#129) * fix : ์คํ ์์ * fix : bucket ์คํ ์์ * fix: S3 ๊ด๋ จ ๊ฐ ๋กค๋ฐฑ --------- Co-authored-by: EpicFn <[email protected]> * refactor: s3 prefix separation (#131) * refactor: S3 prefix ํ๊ฒฝ๋ณ์ ๋ถ๋ฆฌ ๋ฐ server ํ๋กํ์ผ ์ค์ ์ถ๊ฐ * fix: cd ์คํ ์์ * fix : docker run ์ฃผ์ ์์ฐ * refactor: s3 prefix separation (#132) * refactor: S3 prefix ํ๊ฒฝ๋ณ์ ๋ถ๋ฆฌ ๋ฐ server ํ๋กํ์ผ ์ค์ ์ถ๊ฐ * fix: cd ์คํ ์์ * fix : docker run ์ฃผ์ ์์ฐ * fix: bucket ์คํ ์์ * fix: ์คํ ์ ๊ฑฐ * [fix/OPS-390] Secret ๊ฐ ๊ด๋ จ ์ผ๋ถ ์์ (#126) * fix/OPS-390 : secret ํ ํ๋ฆฟ ๋ฐ ์์ ์ฌํญ์ ๋ง๊ฒ ์ฝ๋ ๋ณ์๋ช ๋ณ๊ฒฝ. * feat/OPS-390: NEWS API ์์ ์ถ๊ฐ ์ฌํญ ๋ฐ์. * feat/OPS-390: CI ์ํฌํ๋ก์ฐ ์ผ๋ถ ์์ . * feat/OPS-390: ์ผ๋ถ placeholders ์์ . * feat/OPS-390: ์ผ๋ถ ๋ฌธ์ํ ํญ๋ชฉ ์์ . * refactor: s3 prefix ๋ถ๋ฆฌ ๋ฐ ci/cd ์์ ํ (#134) * refactor: S3 prefix ํ๊ฒฝ๋ณ์ ๋ถ๋ฆฌ ๋ฐ server ํ๋กํ์ผ ์ค์ ์ถ๊ฐ * fix: bucket ์คํ ์์ * [Hotfix] ๋ก๊ทธ์ธ ์๋ฌ ์์ (#135) * Update README.md * Remove unnecessary blank line in ApiV1DashboardController * [Feat/OPS-389] ์คํ์ด์ค ์ด๋ ์๋ฆผ ๊ตฌํ (#136) * new : emitter ๊ด๋ฆฌ service, controller ์์ฑ * feat : ํํธ๋นํธ ๋ก์ง ๊ตฌํ * fix : ๋น๋๊ธฐ ์ฒ๋ฆฌ ํ๋๋ก ๋ณ๊ฒฝ * feat : ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * fix : ํ ์คํธ ์์ * fix : ๋ถํ์ํ ์ด๋ ธํ ์ด์ ์ญ์ --------- Co-authored-by: EpicFn <[email protected]> * [feat/OPS-392] ์ฌ์ฉ์ ๊ฒ์ ๊ธฐ๋ฅ ์ถ๊ฐ (#137) * feat/OPS-392: ๊ฒ์ ๊ธฐ๋ฅ ์ถ๊ฐ & ElasticSearch ๊ตฌํ & ์ผ๋ถ ๋๋ฉ์ธ ์ค๋ฅ ์์ . * feat/OPS-392: CI ์ํฌํ๋ก์ฐ์ ElasticSearch ์๋น์ค ์ปจํ ์ด๋ ์์ฑ ๋ก์ง ์ถ๊ฐ. * feat/OPS-392: CI ์ํฌํ๋ก์ฐ์ ElasticSearch ์๋น์ค ์ปจํ ์ด๋ ์์ฑ ๋ก์ง ์ถ๊ฐ #2 * feat/OPS-392: ์ถ๊ฐ ๋๋ฉ์ธ ์ค๋ฅ ์์ . * feat/OPS-392: Docker-compose์ elastic-search ์๋น์ค ํญ๋ชฉ ์ถ๊ฐ. * fix: ๋๋ฉ์ธ ์์ฒญ ์ฌํญ์ ๋ง๊ฒ ์์ . (#138) * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. (#139) * ๋ฐฐํฌ์ฉ ์ปค๋ฐ (#140) * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #2 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. (#142) * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #2 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #3 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #4 * [Feat/OPS-391] ์์นด์ด๋ธ ์๋ฃ img ์๋ฃ ํ์ ์์ (#141) * feat/OPS-391 : ์ด๋ฏธ์ง ์์ multi part ๊ตฌํ * feat/OPS-391 : ์ด๋ฏธ์ง ์์ multi part ๊ตฌํ * refactor/OPS-391 : enum ๋์๋ฌธ์ ๋ฌด์ * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. (#143) * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #2 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #3 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #4 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #5 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #6 * fix: ์ด์์๋ฒ rabbitmq ํ๊ฒฝ๋ณ์ ์ค์ (#144) * feat/OPS-393 : ํฐ์คํ ๋ฆฌ ํฌ๋กค๋ฌ ์์ฑ (#145) * fix/OPS-394: API ๋ฌธ์ํ ๋ฐ s3 ์ค๋ฅ ์์ #1 (#146) * [fix/OPS-394] ๋ฌธ์ํ ๋ฐ ์ค๋ฅ ์์ 3 (#148) * fix/OPS-394: API ๋ฌธ์ํ ๋ฐ s3 ์ค๋ฅ ์์ #3 * fix/OPS-394: API ๋ฌธ์ํ ๋ฐ s3 ์ค๋ฅ ์์ #4 * refactor/OPS-395: ๊ฒ์ ๋ก์ง ์์ . (#149) * fix: ๋ฒจ๋ก๊ทธ ํฌ๋กค๋ฌ ์์ฑ์ผ์ ํ์ฑ ์ด์ ํด๊ฒฐ (#111) * fix : ์์ฑ์ผ์ ํ์ฑ ์ด์ ํด๊ฒฐ * refactor: velog ํฌ๋กค๋ฌ ์ฐ์ ์์ ๋๊ฒ ์ค์ * fix: ๋ฒจ๋ก๊ทธ ํฌ๋กค๋ฌ ์์ธ ์ฒ๋ฆฌ ์ถ๊ฐ (HTML ์์ ์์ ์ ๋น ๋ฌธ์์ด, ์์ฑ์ผ ์์ ์ ๊ธฐ๋ณธ๊ฐ) * fix : docker ์คํ์ AWS ํ๊ฒฝ๋ณ์๊ฐ ์ ๊ฑฐ (#150) * fix: ์ค๋ฐ๊ฟ ๋ฌธ์ ๋ค ๊ณต๋ฐฑ ์ ๊ฑฐ ๋ฐ OPENAI API Key ์ด์ํ๊ฒฝ๊ฐ ๋ถ๋ฆฌ (#152) * refactor/OPS-396: n-gram analyzer ์ ์ฉ์ ํตํ ๊ฒ์ ๊ฒฐ๊ณผ ํฅ์ & OAuth2SuccessHandler ๋ก์ปฌ ํ๊ฒฝ ๋ถ๊ธฐ. (#154) * refactor/OPS-398: ์ธ์ฆ/์ธ๊ฐ ์ค๋ฅ ์์ (#155) * [Refactor/OPS-380] ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ๊ฐ์ (#156) * refactor : membership ์กฐํ ์ lazy loading์ ์ํ n+1 ๋ฌธ์ ๊ฐ์ * refactor : space์ member ๋ชฉ๋ก ์กฐํ ์ n+ 1 ๋ฌธ์ ํด๊ฒฐ --------- Co-authored-by: EpicFn <[email protected]> * Update README.md (#157) * Create DEV_GUIDE.md (#158) * Update README.md (#159) * fix/OPS-399: ๋ฆฌํ๋ ์ ํ ํฐ ์ด์ ์์ . (#160) * refactor/OPS-397 : ๊ฒ์ ์๊ตฌ์ฌํญ ๋ฐ์ (#161) * hotfix : ์คํ์ด์ค ์ด๋ฏธ์ง ์ ์ฅ ๋ก์ง ์์ (#163) * fix : ํ์ฅ์ ์ถ๊ฐํ๊ณ ๋ก๊ทธ ๋ฑ๋๋ก ๋ณ๊ฒฝ * fix : prefix ๋ก ๊ตฌ๋ถํ๋๋ก ๋ณ๊ฒฝ * fix : CI ๊ณผ์ ์ ๋๋ฏธ prefix ๊ฐ ์ถ๊ฐ * fix : ํ๊ฒฝ ํ์ผ์ prefix ์ถ๊ฐ * fix : ์คํ ์์ --------- Co-authored-by: EpicFn <[email protected]> * fix/OPS-399: ๋ฆฌํ๋ ์ ํ ํฐ ์ด์ ์์ #2 (#165) * fix : ์ด๋ฏธ์ง ๊ฒฝ๋ก ๋ฐ ๋ฐํ ํ์ ์์ (#166) Co-authored-by: EpicFn <[email protected]> * fix : Url ์์ (#167) Co-authored-by: EpicFn <[email protected]> * fix/OPS-400 : ์์ &์ญ์ ์๊ตฌ์ฌํญ ๋ฐ์ (#169) * fix: ์ด์์๋ฒ/ํ ์คํธ์๋ฒ vpc ๋ถ๋ฆฌ๋์ด ์์ด, rabbitmq host ๋ ๋ถ๋ฆฌ (#171) * fix : ๋ฉค๋ฒ ์ญ์ ์ ์ ๋ น ์คํ์ด์ค ์ญ์ ๋ก์ง ๊ตฌํ (#172) Co-authored-by: EpicFn <[email protected]> * Develop -> main ๋ณํฉ (#168) (#173) * [feat/OPS-262] GlobalExceptionHandler ์ค์ (#8) * feat: GlobalExceptionHandler ์งํ ์ฌํญ ์ ์ฅ. * feat/OPS-262 : GlobalExceptionHandler ์์ฑ ์๋ฃ. * [feat/OPS-126] Member ๋๋ฉ์ธ ๊ธฐ์ด ์ค๊ณ (#9) * feat/OPS-127 : Member ์ํฐํฐ ์์ฑ(ํ๋, ์ฐ๊ด ๊ด๊ณ, ์์ฑ์, ๋ฉ์๋) * feat/OPS-128 : MemberRepository ์์ฑ(name, email ๊ฒ์ ์ต์ ์ถ๊ฐ) * feat: GlobalExceptionHandler ์์ฑ์ ์ํ ์งํ ์ฌํญ ์ ์ฅ. * feat/OPS-129 : MemberService ์์ฑ(์กฐํ, ์์ฑ/์์ , ์ญ์ ) * feat/OPS-126 : Member ๋๋ฉ์ธ ์ค๊ณ ์๋ฃ. Service ํ ์คํธ ์ฝ๋ ์ถ๊ฐ * [Chore/OPS-264] ci ์ํฌํ๋ก์ฐ ๊ฐ์ (#10) * chore/OPS-264 : ci.yml ์์ * Update .github/workflows/ci.yml * Update .github/workflows/ci.yml --------- * Update .gitignore to exclude IntelliJ files (#11) Add .idea/ to .gitignore to exclude IntelliJ project files * feat/OPS-134 : ApiV1Controller ์์ฑ ์๋ฃ. (#12) * [chore/OPS-268] CI ์ํฌํ๋ก์ฐ ๊ฐ์ #2 (#15) ํ์ฌ ์์ ๋ก๊ทธ์ธ์ ์ฌ์ฉํ๋ ํน์ ๋ฏผ๊ฐํ ๊ฐ(JWT ํ ํฐ, ์์ client_id ๋ฑ)์ @value ์ด๋ ธํ ์ด์ ์ ํตํด ๋ฐ์์ค๊ณ ์์ต๋๋ค. ํ์ง๋ง ํด๋น ๋ฏผ๊ฐํ ๊ฐ์ ์ ์ฅํ yaml ํ์ผ์ ๋ ํฌ์งํ ๋ฆฌ์ ๋ฐ๋ก ์ฌ๋ฆด ์ ์๊ธฐ์, ๋ ํฌ์งํ ๋ฆฌ์ secrets์ ํด๋น ๊ฐ๋ค์ ์ ์ฅํด๋๊ณ , CI ์ํฌํ๋ก์ฐ์ ์ด ๊ฐ๋ค์ ์ฌ์ฉํด์ application-secrets.yml ํ์ผ์ ์์ฑํ๋ ๋ก์ง์ ์ถ๊ฐํ์ต๋๋ค. * [feat/OPS-155] ์์ ๋ก๊ทธ์ธ ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ(์นด์นด์ค) (#18) * feat/OPS-155 : ์์ ๋ก๊ทธ์ธ/ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ (์นด์นด์ค) ์๋ฃ. ์์ ์ฌํญ ๋ฐ์. * feat/OPS-155 : ์์ ๋ก๊ทธ์ธ/ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ (์นด์นด์ค) ์๋ฃ. ์์ ์ฌํญ ๋ฐ์ #2. * feat/OPS-155 : ์์ ๋ก๊ทธ์ธ/ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ (์นด์นด์ค) ์๋ฃ. ์์ ์ฌํญ ๋ฐ์ #3. * [chore/ops-130] Terraform์ ํ์ฉํด EC2 ์ธ์คํด์ค ์์ฑ ๋ฐ ์ค์ (#17) * chore/OPS-266 : EC2 ์ธ์คํด์ค ์์ฑ * chore/OPS-267 : VPC, IAM, SG ์ค์ * chore : ์๋ธ๋ท ์ค์ ์์ ๋ฐ nginx, mysql ๋ณผ๋ฅจ ๋ง์ดํธ ์ค์ ์ถ๊ฐ * chore : Dockerfile ์์ ๋ฐ EC2 ๋ณด์ ๊ทธ๋ฃน ์์ * chore : MYSQL ์ปจํ ์ด๋ ์คํ์ ์ด๊ธฐ DB ์ด๋ฆ ์ง์ ํ๋๋ก ์ค์ * fix/OPS-271 : SecurityConfig ๋ฐ Jwt ์ธ์ฆ ํํฐ ์์ (#19) * Feat/ops 209 be feat ํด๋ ์์ฑ (#21) * refactor: archive_id + name ๋ณตํฉ ์ ๋ํฌ ์ ์ฝ ์ถ๊ฐ * refactor: folder_id + title ๋ณตํฉ ์ ๋ํฌ ์ ์ฝ ์ถ๊ฐ * refactor: member_id, archive_id ๋จ์ผ ์ ๋ํฌ ์ ์ฝ ์ถ๊ฐ * refactor: ์ํฐํฐ ์ ์ฝ * feat/OPS-209-BE-feat-ํด๋-์์ฑ ์๋ฃ * feat/OPS-209-BE-feat-ํด๋-์์ฑ ์๋ฃ * fix : ์ปจ๋ฒค์ ํต์ผ (#22) * Feat/ops 210 be feat ํด๋ ์ญ์ (#23) * feat/OPS-210 : ํด๋ ์ญ์ ๊ตฌํ * [feat/OPS-151] llm ํ์ฉ ๋ฐ์ดํฐ ์ ์ ํ ๊ธฐ๋ฅ ๊ตฌํ (#27) - groq api๋ฅผ ์ด์ฉํ์ฌ ์์ฝ, ํ๊ทธ ์ถ์ถ ๊ธฐ๋ฅ ๊ตฌํ * [feat/OPS-158] ์์ ๋ก๊ทธ์ธ ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ(๊ตฌ๊ธ) (#28) * feat/OPS-158 : ์์ ๋ก๊ทธ์ธ(๊ตฌ๊ธ) ๊ตฌํ, JWT, Member, Auth ๋๋ฉ์ธ ๊ณ ๋ํ * feat/OPS-158 : ํ ์คํธ ์ผ์ด์ค ์์ . * fix/OPS-158 : template ์ถฉ๋ ํด๊ฒฐ. * fix/OPS-158 : @transactional import ์์ * feat/OPS-211 : ํด๋ ์ด๋ฆ ๋ณ๊ฒฝ ๊ตฌํ (#25) * feat/OPS-211 : ํด๋ ์ด๋ฆ ๋ณ๊ฒฝ ๊ตฌํ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * [chore/OPS-187] Terraform์ ํ์ฉํด RDS ์ธ์คํด์ค ์์ฑ ๋ฐ ์ค์ (#29) * chore/OPS-187 : Terraform์ ํ์ฉํด RDS ์ธ์คํด์ค ์์ฑ ๋ฐ ์ค์น * chore : RDS ์๋ธ๋ท ๊ทธ๋ฃน private์ผ๋ก ์์ * chore : AWS ๋ฆฌ์์ค ๋ค์ด๋ฐ ๊ท์น ์ ์ฉ * [feat] ์คํ์ด์ค ๋ฐ์ดํฐ ๊ด๋ฆฌ (#32) * new/OPS-222 : space controller, sevice, repository ๋น ์์ฑ # Conflicts: # src/main/java/org/tuna/zoopzoop/backend/global/initData/BaseInitData.java * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ์๋ํฌ์ธํธ ์ถ๊ฐ * new/OPS-222 : spaceControllerTest ํ์ผ ์ธํ * refactor/OPS-222 : ํ ์คํธ ํด๋์ค์ ๊ณต์ฉ ํํธ ์ถ์ ํด๋์ค๋ก ๋ถ๋ฆฌ * fix : ์ต์ ์ฌํญ ๋ฐ์ * fix/OPS-222 : ํ ์คํธ ์ฝ๋์์ ํ์ ๋ค๋ฅด๋ ๊ฑฐ ์์ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๊ตฌํ * feat/OPS-222 : space ๋จ์ ํธ๋ค๋ฌ, ์ปค์คํ ์๋ฌ ์์ฑ * fix/OPS-222 : controller ์์ฑ ํ ์คํธ ํต๊ณผ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๋ก์ง ์์ฑ * feat/OPS-222 : ์คํ์ด์ค ์ญ์ ๊ตฌํ * fix/OPS-222 : ํ ์คํธ ์ผ์ด์ค ํต๊ณผ * feat/OPS-245 : controller ๋จ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-245 : ์คํ์ด์ค ๋ช ๋ณ๊ฒฝ ๊ตฌํ * fix/OPS-244 : ์ด๋ฆ ๋ณ๊ฒฝ ์ saveAndFlush๋ก ์ฆ์ ๋ฐ์ * chore/OPS-222 : develop ์ต์ ์ฌํญ ๋ฐ์ * fix : ์ ์ฅ * fix/OPS-222 : globalExceptionHandler ์ปจ๋ฒค์ ํต์ผ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ controller ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-244 : membership ๊ด๋ฆฌ ๋น ์์ฑ * feat/OPS-244 : membership ์์ฑ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ฑ * fix : ํ ์คํธ ์ผ์ด์ค ๊ฐ ์ถฉ๋ ํด๊ฒฐ ์ค * fix : ์ต์ ์ฌํญ ๋ฐ์ * ์์์ ์ฅ * ์ด๊ธฐ ์ํ * fix : ๋ฏธ๋ด์ฑ ์ ์ฉ * feat/OPS-244 : ์คํ์ด์ค ๋ฉค๋ฒ ์ถ๊ฐ ๊ธฐ๋ฅ * fix : spaceControllerTest์ memberControllerTest ๊ฐ ์ถฉ๋ ํด๊ฒฐ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * chore/OPS-244 : ์ธ์ฆ ๊ด๋ จ ์ฝ๋ ์ฃผ์ ์ฒ๋ฆฌ * feat/OPS-270 : ์คํ์ด์ค ๋ก์ง์ ์ฌ์ฉ์ ์ ๋ณด ์ฒดํฌ ์ถ๊ฐ * feat/OPS-22 : ํ ์คํธ ์ผ์ด์ค์ WithUserDetails ๋ฐ์ * feat/OPS-222 : ์ธ์ฆ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * fix : ๋ถํ์ํ ์ฃผ์ ์ญ์ * new/OPS-222 : space controller, sevice, repository ๋น ์์ฑ # Conflicts: # src/main/java/org/tuna/zoopzoop/backend/global/initData/BaseInitData.java * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ์๋ํฌ์ธํธ ์ถ๊ฐ * new/OPS-222 : spaceControllerTest ํ์ผ ์ธํ * refactor/OPS-222 : ํ ์คํธ ํด๋์ค์ ๊ณต์ฉ ํํธ ์ถ์ ํด๋์ค๋ก ๋ถ๋ฆฌ * fix : ์ต์ ์ฌํญ ๋ฐ์ * fix/OPS-222 : ํ ์คํธ ์ฝ๋์์ ํ์ ๋ค๋ฅด๋ ๊ฑฐ ์์ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๊ตฌํ * feat/OPS-222 : space ๋จ์ ํธ๋ค๋ฌ, ์ปค์คํ ์๋ฌ ์์ฑ * fix/OPS-222 : controller ์์ฑ ํ ์คํธ ํต๊ณผ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๋ก์ง ์์ฑ * feat/OPS-222 : ์คํ์ด์ค ์ญ์ ๊ตฌํ * fix/OPS-222 : ํ ์คํธ ์ผ์ด์ค ํต๊ณผ * feat/OPS-245 : controller ๋จ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-245 : ์คํ์ด์ค ๋ช ๋ณ๊ฒฝ ๊ตฌํ * fix/OPS-244 : ์ด๋ฆ ๋ณ๊ฒฝ ์ saveAndFlush๋ก ์ฆ์ ๋ฐ์ * chore/OPS-222 : develop ์ต์ ์ฌํญ ๋ฐ์ * fix : ์ ์ฅ * fix/OPS-222 : globalExceptionHandler ์ปจ๋ฒค์ ํต์ผ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ controller ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-244 : membership ๊ด๋ฆฌ ๋น ์์ฑ * feat/OPS-244 : membership ์์ฑ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ฑ * fix : ํ ์คํธ ์ผ์ด์ค ๊ฐ ์ถฉ๋ ํด๊ฒฐ ์ค * fix : ์ต์ ์ฌํญ ๋ฐ์ * ์์์ ์ฅ * ์ด๊ธฐ ์ํ * fix : ๋ฏธ๋ด์ฑ ์ ์ฉ * feat/OPS-244 : ์คํ์ด์ค ๋ฉค๋ฒ ์ถ๊ฐ ๊ธฐ๋ฅ * fix : spaceControllerTest์ memberControllerTest ๊ฐ ์ถฉ๋ ํด๊ฒฐ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * chore/OPS-244 : ์ธ์ฆ ๊ด๋ จ ์ฝ๋ ์ฃผ์ ์ฒ๋ฆฌ * feat/OPS-270 : ์คํ์ด์ค ๋ก์ง์ ์ฌ์ฉ์ ์ ๋ณด ์ฒดํฌ ์ถ๊ฐ * feat/OPS-22 : ํ ์คํธ ์ผ์ด์ค์ WithUserDetails ๋ฐ์ * feat/OPS-222 : ์ธ์ฆ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * fix : ๋ถํ์ํ ์ฃผ์ ์ญ์ * fix : ๋ถํ์ํ ํ์ผ ์ญ์ --------- * Ops 272 be feat ์๋ฃ ์ด๋ฆ ์กฐํ (#31) * feat/OPS-211 : ํด๋ ์ด๋ฆ ๋ณ๊ฒฝ ๊ตฌํ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * feat/OPS-272 : ํด๋/ํ์ผ ์กฐํ ๊ตฌํ * refactor/OPS-272 : tag ์์ฑ์ ์ถ๊ฐ * feat/OPS-195 : ๋ด์ค ๋ชฉ๋ก ์กฐํ ๊ธฐ๋ฅ ๊ตฌํ(์ต์ ๋ด์ค, ํค์๋ ๊ธฐ๋ฐ). ์๋น์ค ํ ์คํธ ์ถ๊ฐ. (#33) * refactor/OPS-277 : default ํด๋ ์๋ ์์ฑ (#34) * [chore/OPS-278] Auth, Member, News ๋๋ฉ์ธ ๋ฌธ์ํ ๋ฐ ๊ณ ๋ํ. (#35) * chore/OPS-278 : Auth ๋๋ฉ์ธ ๋ฌธ์ํ ์๋ฃ & ApiV1MemberController ์ถ๊ฐ ๊ธฐ๋ฅ ๊ตฌํ. * refactor/OPS-278 : ApiV1MemberController ์ถ๊ฐ ์ฌํญ์ ๋ง๊ฒ ํ ์คํธ ์ถ๊ฐ ๊ตฌํ. * refactor/OPS-278 : Member ์์ฑ ์, ๋๋คํ UUID์ ์ 5๊ธ์๋ฅผ ํ๊ทธ๋ก ์ฌ์ฉํ๋๋ก ๋ณ๊ฒฝ. * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- * refactor/OPS-283 : datasource ์ํฐํฐ ์์ (#39) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * [feat/OPS-175] ์น ํฌ๋กค๋ง ๋ฐ์ดํฐ ์ ์ ํ ๊ธฐ๋ฅ ๊ตฌํ (#41) * feat/OPS-175 : ์น ํฌ๋กค๋ง ๋ฐ์ดํฐ ์ ์ ํ ๊ธฐ๋ฅ ๊ตฌํ * [refactor/OPS-287] News ๋๋ฉ์ธ ๊ณ ๋ํ (#42) * refactor/OPS-287 : newsSearch ๋ฉ์๋ ๋ก์ง ๋ณ๊ฒฝ ๋ฐ ์ผ๋ถ API ๋ฌธ์ํ. * refactor/OPS-287 : NewsServiceTest API๋ฅผ ํธ์ถํ๋ ๋ฐฉ์์ผ๋ก ๋ณ๊ฒฝ. * Ops 226 be feat ์๋ฃ ๋ฑ๋ก (#44) * refactor/OPS-283 : datasource ์ํฐํฐ ์์ * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * feat/OPS-226 : ์๋ฃ ๋ฑ๋ก ๊ตฌํ * refactor/OPS-226 : ๋ฉ์๋ ๋ช ์์ --------- * Ops 215 be feat ์๋ฃ ์ญ์ (#46) * refactor/OPS-283 : datasource ์ํฐํฐ ์์ * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * feat/OPS-226 : ์๋ฃ ๋ฑ๋ก ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ --------- * [feat/OPS-293] LiveBlocks๋ฅผ ์ํ React-flow ๋ฐ์ดํฐ ๊ด๋ฆฌ ๋๋ฉ์ธ ์ค๊ณ ์๋ฃ. ํ ์คํธ ์ถ๊ฐ. (#47) * feat/OPS-293 : LiveBlocks๋ฅผ ์ํ React-flow ๋ฐ์ดํฐ ๊ด๋ฆฌ ๋๋ฉ์ธ ์ค๊ณ ์๋ฃ. ํ ์คํธ ์ถ๊ฐ. * feat/OPS-293 : folder ํ ์คํธ์ @transactional ์ถ๊ฐ. * feat/OPS-293 : MemberServiceTest ์์ #1 * feat/OPS-293 : MemberServiceTest ์์ #2 * feat/OPS-293 : Folder ํ ์คํธ์ ActiveProfile(test) ์ถ๊ฐ. * feat/OPS-293 : ํ ์คํธ์ ๋ฌด๊ฒฐ์ฑ ๊ฒ์ฆ์ ์ํ @afterall, @AfterEach ์ถ๊ฐ. * feat/OPS-293 : ์ผ๋ถ ์์ . * feat/OPS-293 : ์ง์ง ๋ง์ง๋ง ์์ . * [chore/ops-132] CI/CD ํ์ดํ๋ผ์ธ ๊ตฌ์ถ (#43) * chore/OPS-133 : CI ํ์ดํ๋ผ์ธ ๊ตฌ์ถ * chore: ํ ์คํธ/์ด์ ํ๊ฒฝ์ฉ GitHub Actions Terraform ์๋ ์ธํ๋ผ ์ ์ฉ ์ํฌํ๋ก์ฐ ์ถ๊ฐ * chore : ํ๊ฒฝ๋ณ์๋ก test/prod ์๋ฒ ๋ถ๋ฆฌ ๊ฐ๋ฅํ๋๋ก ์ค์ * chore/OPS-135 : CD ์ํฌํ๋ก์ฐ ์ถ๊ฐ * chore: CI ํ CD ์คํ๋๋๋ก ์ค์ * chore : CI ์ํฌํ๋ก์ฐ job ๋ถ๋ฆฌ(ํ ์คํธ,๋น๋/๋์ปค ๋น๋,ghcr push) * chore : docker build jobs์์ checkout ๋จ๊ณ ์ถ๊ฐ * chore: CI ์ํฌํ๋ก์ฐ job ๊ตฌ๋ถ ์์ฐ * chore : develop/main ๋ธ๋์น์ ๋ฐ๋ผ CI/CD ์ํฌํ๋ก์ฐ ๋ถ๋ฆฌ * chore : Spring Boot Acutator ์์กด์ฑ ์ถ๊ฐ * chore: Actions์์ SSH ์ ์ ํ docker ์คํ ๊ถํ ๊ฐ๋๋ก ์ค์ * chore: ์ปจํ ์ด๋ ์คํ ๋ก๊ทธ ํฐ๋ฏธ๋์ ์ถ๋ ฅ ์ค์ * chore : ํฌ์ค์ฒดํฌ ์ค์ * chore: secrets ์ง์ ssh ํ๊ฒฝ ๋ณ์๋ก ์ ๋ฌ * chore: ํ๊ฒฝ๋ณ์ ์ง์ docker run์ ๋ฃ๊ธฐ * chore: spdocker run ์์ ring profile ์ ๊ฑฐ * chore: nginx ์ค์ * chore: test-cd ์์ * chore: test-cd ์์ 2 * chore: ghcr ๋ก๊ทธ์ธ ํ ํฐ ์์ * chore: ๋์ปค ์ด๋ฏธ์ง pull ์ด๋ฆ ์์ * chore: ssh ๋ด ์์ ํ ghcr ๋ก๊ทธ์ธ * chore : ์ด๋ฏธ pullํ ์ด๋ฏธ์ง์ run ์ด๋ฏธ์ง ์ด๋ฆ ์ผ์น์ํค๊ธฐ * chore: mysql driver ์์กด์ฑ ์ถ๊ฐ * chore : ํฌ์ค์ฒดํฌ ์์ฒญ ์คํ๋ง ์ํ๋ฆฌํฐ ํํฐ์ ๊ฑธ๋ฆฌ์ง ์๋๋ก ์ค์ * chore: nginx ํฌํธ ์ค์์นญ ์ค์ * chore: nginx ํฌํธ ์ค์์นญ ์ค์ ์์ * chore: nginx ํฌํธ ์ค์์นญ ์ค์ ์์ 2 * chore: ์ด์์๋ฒ CD ์ํฌํ๋ก์ฐ ์์ * chore : prod-server ์ํฌํ๋ก์ฐ ํ์ฑํ ๊ฒฝ๋ก ์ค์ * chore : test commit ๋์ค์ ์ง์ฐ๊ธฐ * [Feat/OPS-214] ์คํ์ด์ค ๋ฉค๋ฒ ๊ด๋ฆฌ (#50) * feat/OPS-227 : ์คํ์ด์ค ๋ฉค๋ฒ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-227 : ์คํ์ด์ค ๋ชฉ๋ก ๋ฐํ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-251 : ๊ถํ ๋ณ๊ฒฝ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-214 : ๊ถํ ๋ณ๊ฒฝ ์๋ํฌ์ธํธ ๊ตฌํ * fix/OPS-214 : ๋จ์ ๋ฉ์ธ์ง ์ค๋ฅ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-214 : ๋ก์ง ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-251 : globalExceptionHandler์ ์ญ์ง๋ ฌํ ์คํจ ์๋ฌ ์ถ๊ฐ * refactor/OPS-214 : ๋น์ฆ๋์ค ๋ก์ง์ ์๋น์ค ๊ณ์ธต์ ์ผ์ * feat/OPS-231 : ์คํ์ด์ค ์ด๋ ์ปจํธ๋กค๋ฌ ํ ์คํธ์ผ์ด์ค ์์ฑ * feat/OPS-231 : ์คํ์ด์ค ์ด๋ ๋ก์ง ์์ฑ * feat/OPS-231 : ์คํ์ด์ค์ด๋ ์๋น์ค ๋น ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * feat/OPS-228 : ํ์ ํด์ถ ์ปจํธ๋กค๋ฌ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feeat/OPS-229 : ํ์ ํด์ถ ๊ตฌํ ์๋ฃ * fix : ๊ธฐ์กด ํ ์คํธ ์ผ์ด์ค ์ผ๊ด์ฑ ์๊ฒ ์์ * feat : ๋ฉค๋ฒ ํด์ถ ์๋น์ค ํ ์คํธ ์ฝ๋ ์์ฑ * refactor : DTO ํจํค์ง ๋ณ๊ฒฝ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ์ปจํธ๋กค๋ฌ ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ๋ก์ง ์์ฑ * refactor : space ๋๋ฉ์ธ dto ํจํค์ง ๋ณ๊ฒฝ * feat/OPS-227 : ์คํ์ด์ค ๋ฉค๋ฒ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-227 : ์คํ์ด์ค ๋ชฉ๋ก ๋ฐํ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-251 : ๊ถํ ๋ณ๊ฒฝ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-214 : ๊ถํ ๋ณ๊ฒฝ ์๋ํฌ์ธํธ ๊ตฌํ * fix/OPS-214 : ๋จ์ ๋ฉ์ธ์ง ์ค๋ฅ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-214 : ๋ก์ง ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-251 : globalExceptionHandler์ ์ญ์ง๋ ฌํ ์คํจ ์๋ฌ ์ถ๊ฐ * refactor/OPS-214 : ๋น์ฆ๋์ค ๋ก์ง์ ์๋น์ค ๊ณ์ธต์ ์ผ์ * feat/OPS-231 : ์คํ์ด์ค ์ด๋ ์ปจํธ๋กค๋ฌ ํ ์คํธ์ผ์ด์ค ์์ฑ * feat : ์ต์ ์ฌํญ ๋ฐ์ * feat/OPS-231 : ์คํ์ด์ค์ด๋ ์๋น์ค ๋น ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * feat/OPS-228 : ํ์ ํด์ถ ์ปจํธ๋กค๋ฌ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feeat/OPS-229 : ํ์ ํด์ถ ๊ตฌํ ์๋ฃ * fix : ๊ธฐ์กด ํ ์คํธ ์ผ์ด์ค ์ผ๊ด์ฑ ์๊ฒ ์์ * feat : ๋ฉค๋ฒ ํด์ถ ์๋น์ค ํ ์คํธ ์ฝ๋ ์์ฑ * refactor : DTO ํจํค์ง ๋ณ๊ฒฝ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ์ปจํธ๋กค๋ฌ ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ๋ก์ง ์์ฑ * refactor : space ๋๋ฉ์ธ dto ํจํค์ง ๋ณ๊ฒฝ --------- * refactor/OPS-308 : ๋๋ฉ์ธ ๋ถ๋ฆฌ & CI ์ํฌํ๋ก์ฐ์ application-secrets-server.yml ์ถ๊ฐ. (#52) * Ops 255 be feat ์๋ฃ ์์ (#54) * refactor/OPS-283 : datasource ์ํฐํฐ ์์ * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * feat/OPS-226 : ์๋ฃ ๋ฑ๋ก ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-255 : ์๋ฃ ์ด๋ ๋ฐ ์์ ๊ตฌํ --------- * feat/OPS-289 : dataprocessor ์๋น์ค ์์ฑ (#59) * fix/OPS-318 : proxy host ์ค์์นญรฌ๏ฟฝ ssl ์ธ์ฆ์ ์ ์ง (#60) * [refactor/OPS-310] redirect url ๋ณ๊ฒฝ (#53) * refactor/OPS-310 : redirect-url ๋ณ๊ฒฝ. * refactor/OPS-310 : ์์ ์์ . * refactor/OPS-310 : ๋ ํ๋์ ์์ ์์ . * refactor/OPS-310 : ํฐ ์์ . * refactor/OPS-310 : ํ ์คํธ * refactor/OPS-310 : ์์ฒญ ์ฌํญ ๋ฐ์. * refactor/OPS-310 : ์์ฒญ ์ฌํญ ๋ฐ์ #2 * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ (#64) * [refactor/OPS-323] News API ์กฐํ ๋ก์ง ์์ . (#65) * ๋ฐฐํฌ ํ ์คํธ #2 * ๋ก์ง ์์ ํ ์คํธ * ๋ก์ง ์์ ํ ์คํธ #2 * refactor/OPS-322 : source ์นผ๋ผ๋ช ์์ (#68) * refactor/OPS-322 : source ์นผ๋ผ๋ช ์์ * refactor/OPS-322 : source ์นผ๋ผ๋ช ์์ * feat/OPS-321 : dataProcessorService์์ ์์ฝ ๋ก์ง ์์ฑ (#69) * [fix/OPS-317] CI/CD ํ์ดํ๋ผ์ธ ์ด๋ฒคํธ ๋ถ๋ฆฌ (#66) * fix : prod-server nginx ์ ๋ณด ์ถ๋ ฅ ์ ๊ฑฐ * fix : prod-server CD ์ํฌํ๋ก์ฐ main์ push๋ ๋ ์คํ๋๋๋ก ์์ * fix : test-server CI๋ pr์ develop์ ์คํ, CD๋ push๋ ๋ ์คํ * fix : test-server CI ์ํฌํ๋ก์ฐ์์ CD ๋ถ๋ถ ์ ๊ฑฐ * chore : ๋น๋์ aws๊ด๋ จ ์ ๋ณด application-secret.yml์ ๋ค์ด๊ฐ๋๋ก ์ค์ (#73) * chore : S3 ์ฌ์ฉ์ ์ํด ๋น๋์ AWS ์ ๋ณด application-secrets.yml์ ์ถ๊ฐ๋๋๋ก ์ค์ * chore : ์ญํ ์ S3 ์ ๊ทผ ์ ์ฑ ๋ถ์ฐฉ ํ๋๋ก ์ค์ * chore : รฃyml์ ์ถ๊ฐ์ ๋ณด ๋ฃ๋๋ก ์ค์ * [Feat/OPS-275] ์คํ์ด์ค ์ธ๋ค์ผ ์ด๋ฏธ์ง ์ ์ฅ (#71) * chore : S3 ํ๊ฒฝ ์ค์ * feat : S3Service ๊ตฌ์ฑ * chore : multipart ๋ฐ์ดํฐ ํฌ๊ธฐ ์ค์ * feat : S3 ์ ๋ก๋ ํ ์คํธ์ฉ ์๋ํฌ์ธํธ ์์ฑ * feat : S3 ์ฐ๋ ์๋ฃ * feat : space entity์ imageUrl ํญ๋ชฉ ์ถ๊ฐ * feat : ์ธ๋ค์ผ ์บก์ฒ ํ ์คํธ์ฉ * feat : ์ธ๋ค์ผ ์ดฌ์ ํ ์คํธ ์๋ํฌ์ธํธ ์์ฑ * feat : ์คํ์ด์ค ์ธ๋ค์ผ ๊ฐฑ์ API ์์ฑ * feat : ์คํ์ด์ค ์ด๋ฏธ์ง ๊ฐฑ์ ๊ธฐ๋ฅ ์์ฑ * feat : ์คํ์ด์ค ๋ชฉ๋ก ๋ฐํ ์ ์ธ๋ค์ผ url ๊ฐ์ด ๋ฐํ * feat : ์คํ์ด์ค ๋จ๊ฑด ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat : ์คํ์ด์ค ๋จ๊ฑด ์กฐํ ๊ตฌํ * feat : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ํ์ด์ง ๊ธฐ๋ฅ ์ถ๊ฐ --------- * [feat/OPS-324] ํฌ๋กฌ ํ์ฅ ํ๋ก๊ทธ๋จ ์์ ๋ก๊ทธ์ธ ๋ถ๊ธฐ & ์์ ๋ก๊ทธ์ธ ํ ์คํธ API ์ถ๊ฐ. (#70) * feat/OPS-324 : ํ์ฅ ํ๋ก๊ทธ๋จ ๋ถ๊ธฐ ๋ฐ ์์ ๋ก๊ทธ์ธ ํ ์คํธ API ์ถ๊ฐ. * feat/OPS-324 : ํ ์คํธ ๋ก์ง ์ผ๋ถ ์์ . * feat/OPS-324 : ํ ์คํธ ๋ก์ง ์ผ๋ถ ์์ . #2 * feat/OPS-324 : ํ ์คํธ ์๋ฃ, ํ ์คํธ ์ฝ๋ ์ ๊ฑฐ. * feat/OPS-324 : ๋ก๊ทธ์ธ ๋ถ๊ธฐ ์์ . * feat/OPS-324 : state ์ ๋ณด๋ฅผ ์ ์ฅํ๋ resolver ์ถ๊ฐ. * feat/OPS-324 : session ๋ฑ๋ก์ ์ํ OAuth2LoginSourceFilter ํด๋์ค ์ถ๊ฐ. * feat/OPS-324 : ํด๊ฒฐ * fix : ci ์ secrets ์์ S3 ๊ด๋ จ ์ํฌ๋ฆฟ ๊ฐ ์ญ์ ํ๋๋ก ๋ณ๊ฒฝ(๋ฒํท๋ช ์ ์ธ) (#74) * fix : ci ์ secrets ์์ S3 ๊ด๋ จ ์ํฌ๋ฆฟ ๊ฐ ์ญ์ ํ๋๋ก ๋ณ๊ฒฝ(๋ฒํท๋ช ์ ์ธ) * fix : CI ์คํ ์์ * fix : build ๋จ๊ณ์์ testest๋ฅผ ์ํํ์ง ์๋๋ก ๋ณ๊ฒฝ --------- * [feat/OPS-198] ์์นด์ด๋ธ ์ ๋ณด๋ก ๋ด์ค ๋ชฉ๋ก ์กฐํ (#75) * feat/OPS-198 : ์์นด์ด๋ธ ๊ธฐ๋ฐ ๋ด์ค ์กฐํ ๊ตฌํ. * feat/OPS-198 : ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ. * feat/OPS-265 : LLM-ํ์ฉ-๋ฐ์ดํฐ-์ ์ ํ-์-๊ธฐ์กด-์์นด์ด๋ธ์-ํ๊ทธ-์ฐ๋ (#77) * refactor/OPS-319: ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ (#76) * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * fix : SpringDoc๊ณผ Spring AI ๊ฐ ์์กด์ฑ ์ถฉ๋ ํด๊ฒฐ (#79) * [Feat/OPS-327] ์๋ฃ ๋ฑ๋ก llm ์ฐ๋ (#78) * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-327 : ์๋ฃ ๋ฑ๋ก LLM ์ฐ๋ * [feat/OPS-328] ์ธ์ฆ/์ธ๊ฐ ๋ก์ง ๋ณ๊ฒฝ (#80) * feat/OPS-328 : RefreshToken์ ์๋ฒ์์ ์ ์ฅํ๋๋ก ๋ณ๊ฒฝ. API ์ผ๋ถ ์์ . * feat/OPS-328 : ํ์ฅ ํ๋ก๊ทธ๋จ ๋ก๊ทธ์ธ ๋ฉ์๋ ์ถ๊ฐ ๋ฐ ๋ฐ์ดํฐ ์บ์ฑ ๋ฉ์๋ ์ถ๊ฐ. * [refactor/OPS-337] ์๊ตฌ์ฌํญ ๋ฐ์ ๋ฐ ์ผ๋ถ ๋ก์ง ์์ . (#81) * refactor/OPS-337 : ํ๋ก ํธ ์๊ตฌ์ฌํญ ๋ฐ์ ๋ฐ ์๋ฌ ์์ . * refactor/OPS-337 : ํ ์คํธ ์ผ์ด์ค ์์ . * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ (#82) * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : mock ์ถ๊ฐ๋ก ์ธํ testcase ์์ * [feat/OPS-338] ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ (#83) * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : mock ์ถ๊ฐ๋ก ์ธํ testcase ์์ * refactor/OPS-338 : Dev ํ ํฐ ๋ฐ๊ธ ์ปจํธ๋กค๋ฌ ์ถ๊ฐ * [Feat/OPS-326] ๋์๋ณด๋ ๋ฐ์ดํฐ ์ ์ฅ ์ฒด๊ณ ๊ตฌ์ถ (#85) * refactor : graph ๋๋ฉ์ธ์ dashboard ๋๋ฉ์ธ์ผ๋ก ์์ , dashboard ์ํฐํฐ ์์ฑ * feat : ์คํ์ด์ค ๋จ๊ฑด ์กฐํ ์ ๋์๋ณด๋ id๋ ํจ๊ป ๋ฐํ * refactor : API ๋ช ๋ณ๊ฒฝ * dashboard ๊ธฐ๋ฐ์ผ๋ก ์ ์ฅ/์กฐํ ๋๋๋ก ๋ณ๊ฒฝ * refactor : ํ ์คํธ ์ฝ๋ ์์ * fix : ๋ฐํ ๋ฉ์ธ์ง ์์ * feat : ์๋ช ๊ฒ์ฆ ๋ก์ง ๊ตฌํ * refactor : signature ์๋น์ค ๋ถ๋ฆฌ * fix : ์คํ ์์ * fix : CI ํ์ดํ๋ผ์ธ ์์ --------- * [feat/OPS-329] Sentry๋ฅผ ํตํ ๋ชจ๋ํฐ๋ง ํ๊ฒฝ ๊ตฌ์ถ. (#86) * feat/OPS-329 : Sentry๋ฅผ ํตํ ๋ชจ๋ํฐ๋ง ํ๊ฒฝ ๊ตฌ์ถ. * feat/OPS-329: ์ถ๊ฐ๋ก ํ๋ก ํธ ์๊ตฌ ์ฌํญ ๋ฐ์. * refactor/OPS-353 : ๋ถ๋ฆฌ ์๋ฃ. (#87) * [refactor/OPS-354] ํ ์คํธ ์ผ์ด์ค ์ฌ์ฉ ํ๋กํ ๋ณ๊ฒฝ. (#88) * refactor/OPS-354 : ํ ์คํธ ์ผ์ด์ค ์ฌ์ฉ ํ๋กํ ๋ณ๊ฒฝ. * refactor/OPS-354 : ์ด๋๋ ์๋ผ? * refactor/OPS-355 : ์๊ตฌ ์ฌํญ ๋ฐ์. (#91) * feat/OPS-358: Redis ์์กด์ฑ ์ถ๊ฐ ๋ฐ RedisConfig ์ค์ ์๋ฃ. AuthResultData ์ง๋ ฌํ ๋ฐ AuthResult ํด๋์ค์ TTL ๋์ . (#92) * feat/OPS-356 : ๋ค์ด๋ฒ ๋ธ๋ก๊ทธ ํฌ๋กค๋ฌ ์์ฑ (#93) * [feat/OPS-252] ์กฐ๊ฑด๋ณ ์๋ฃ ๊ฒ์ (#89) * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-327 : ์๋ฃ ๋ฑ๋ก LLM ์ฐ๋ * refactor/OPS-252 : ์กฐ๊ฑด๋ณ ์๋ฃ ๊ฒ์ ๊ตฌํ * refactor/OPS-252 : ์กฐ๊ฑด๋ณ ์๋ฃ ๊ฒ์ * fix : ์คํ์ด์ค, ์ฌ์ฉ์ ๋ชฉ๋ก ๋ฐํ ์ ํญ์ id ์ค๋ฆ์ฐจ์ ์ ๋ ฌ (#94) * IllegalStateException(๋์์ฑ ๋ฌธ์ )๊ด๋ จ ์ฒ๋ฆฌ ๋ฉ์๋ ์ถ๊ฐ. (#95) * [fix/OPS-362] ์๊ตฌ ์ฌํญ ๋ฐ์ (#96) * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์. * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#2 * [feat/OPS-341]โฆ
EpicFn
added a commit
that referenced
this pull request
Oct 15, 2025
* [feat/OPS-262] GlobalExceptionHandler ์ค์ (#8) * feat: GlobalExceptionHandler ์งํ ์ฌํญ ์ ์ฅ. * feat/OPS-262 : GlobalExceptionHandler ์์ฑ ์๋ฃ. * [feat/OPS-126] Member ๋๋ฉ์ธ ๊ธฐ์ด ์ค๊ณ (#9) * feat/OPS-127 : Member ์ํฐํฐ ์์ฑ(ํ๋, ์ฐ๊ด ๊ด๊ณ, ์์ฑ์, ๋ฉ์๋) * feat/OPS-128 : MemberRepository ์์ฑ(name, email ๊ฒ์ ์ต์ ์ถ๊ฐ) * feat: GlobalExceptionHandler ์์ฑ์ ์ํ ์งํ ์ฌํญ ์ ์ฅ. * feat/OPS-129 : MemberService ์์ฑ(์กฐํ, ์์ฑ/์์ , ์ญ์ ) * feat/OPS-126 : Member ๋๋ฉ์ธ ์ค๊ณ ์๋ฃ. Service ํ ์คํธ ์ฝ๋ ์ถ๊ฐ * [Chore/OPS-264] ci ์ํฌํ๋ก์ฐ ๊ฐ์ (#10) * chore/OPS-264 : ci.yml ์์ * Update .github/workflows/ci.yml Co-authored-by: Copilot <[email protected]> * Update .github/workflows/ci.yml Co-authored-by: Copilot <[email protected]> --------- Co-authored-by: Copilot <[email protected]> * Update .gitignore to exclude IntelliJ files (#11) Add .idea/ to .gitignore to exclude IntelliJ project files * feat/OPS-134 : ApiV1Controller ์์ฑ ์๋ฃ. (#12) * [chore/OPS-268] CI ์ํฌํ๋ก์ฐ ๊ฐ์ #2 (#15) ํ์ฌ ์์ ๋ก๊ทธ์ธ์ ์ฌ์ฉํ๋ ํน์ ๋ฏผ๊ฐํ ๊ฐ(JWT ํ ํฐ, ์์ client_id ๋ฑ)์ @value ์ด๋ ธํ ์ด์ ์ ํตํด ๋ฐ์์ค๊ณ ์์ต๋๋ค. ํ์ง๋ง ํด๋น ๋ฏผ๊ฐํ ๊ฐ์ ์ ์ฅํ yaml ํ์ผ์ ๋ ํฌ์งํ ๋ฆฌ์ ๋ฐ๋ก ์ฌ๋ฆด ์ ์๊ธฐ์, ๋ ํฌ์งํ ๋ฆฌ์ secrets์ ํด๋น ๊ฐ๋ค์ ์ ์ฅํด๋๊ณ , CI ์ํฌํ๋ก์ฐ์ ์ด ๊ฐ๋ค์ ์ฌ์ฉํด์ application-secrets.yml ํ์ผ์ ์์ฑํ๋ ๋ก์ง์ ์ถ๊ฐํ์ต๋๋ค. * [feat/OPS-155] ์์ ๋ก๊ทธ์ธ ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ(์นด์นด์ค) (#18) * feat/OPS-155 : ์์ ๋ก๊ทธ์ธ/ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ (์นด์นด์ค) ์๋ฃ. ์์ ์ฌํญ ๋ฐ์. * feat/OPS-155 : ์์ ๋ก๊ทธ์ธ/ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ (์นด์นด์ค) ์๋ฃ. ์์ ์ฌํญ ๋ฐ์ #2. * feat/OPS-155 : ์์ ๋ก๊ทธ์ธ/ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ (์นด์นด์ค) ์๋ฃ. ์์ ์ฌํญ ๋ฐ์ #3. * [chore/ops-130] Terraform์ ํ์ฉํด EC2 ์ธ์คํด์ค ์์ฑ ๋ฐ ์ค์ (#17) * chore/OPS-266 : EC2 ์ธ์คํด์ค ์์ฑ * chore/OPS-267 : VPC, IAM, SG ์ค์ * chore : ์๋ธ๋ท ์ค์ ์์ ๋ฐ nginx, mysql ๋ณผ๋ฅจ ๋ง์ดํธ ์ค์ ์ถ๊ฐ * chore : Dockerfile ์์ ๋ฐ EC2 ๋ณด์ ๊ทธ๋ฃน ์์ * chore : MYSQL ์ปจํ ์ด๋ ์คํ์ ์ด๊ธฐ DB ์ด๋ฆ ์ง์ ํ๋๋ก ์ค์ * fix/OPS-271 : SecurityConfig ๋ฐ Jwt ์ธ์ฆ ํํฐ ์์ (#19) * Feat/ops 209 be feat ํด๋ ์์ฑ (#21) * refactor: archive_id + name ๋ณตํฉ ์ ๋ํฌ ์ ์ฝ ์ถ๊ฐ * refactor: folder_id + title ๋ณตํฉ ์ ๋ํฌ ์ ์ฝ ์ถ๊ฐ * refactor: member_id, archive_id ๋จ์ผ ์ ๋ํฌ ์ ์ฝ ์ถ๊ฐ * refactor: ์ํฐํฐ ์ ์ฝ * feat/OPS-209-BE-feat-ํด๋-์์ฑ ์๋ฃ * feat/OPS-209-BE-feat-ํด๋-์์ฑ ์๋ฃ * fix : ์ปจ๋ฒค์ ํต์ผ (#22) Co-authored-by: EpicFn <[email protected]> * Feat/ops 210 be feat ํด๋ ์ญ์ (#23) * feat/OPS-210 : ํด๋ ์ญ์ ๊ตฌํ * [feat/OPS-151] llm ํ์ฉ ๋ฐ์ดํฐ ์ ์ ํ ๊ธฐ๋ฅ ๊ตฌํ (#27) - groq api๋ฅผ ์ด์ฉํ์ฌ ์์ฝ, ํ๊ทธ ์ถ์ถ ๊ธฐ๋ฅ ๊ตฌํ * [feat/OPS-158] ์์ ๋ก๊ทธ์ธ ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ(๊ตฌ๊ธ) (#28) * feat/OPS-158 : ์์ ๋ก๊ทธ์ธ(๊ตฌ๊ธ) ๊ตฌํ, JWT, Member, Auth ๋๋ฉ์ธ ๊ณ ๋ํ * feat/OPS-158 : ํ ์คํธ ์ผ์ด์ค ์์ . * fix/OPS-158 : template ์ถฉ๋ ํด๊ฒฐ. * fix/OPS-158 : @transactional import ์์ * feat/OPS-211 : ํด๋ ์ด๋ฆ ๋ณ๊ฒฝ ๊ตฌํ (#25) * feat/OPS-211 : ํด๋ ์ด๋ฆ ๋ณ๊ฒฝ ๊ตฌํ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * [chore/OPS-187] Terraform์ ํ์ฉํด RDS ์ธ์คํด์ค ์์ฑ ๋ฐ ์ค์ (#29) * chore/OPS-187 : Terraform์ ํ์ฉํด RDS ์ธ์คํด์ค ์์ฑ ๋ฐ ์ค์น * chore : RDS ์๋ธ๋ท ๊ทธ๋ฃน private์ผ๋ก ์์ * chore : AWS ๋ฆฌ์์ค ๋ค์ด๋ฐ ๊ท์น ์ ์ฉ * [feat] ์คํ์ด์ค ๋ฐ์ดํฐ ๊ด๋ฆฌ (#32) * new/OPS-222 : space controller, sevice, repository ๋น ์์ฑ # Conflicts: # src/main/java/org/tuna/zoopzoop/backend/global/initData/BaseInitData.java * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ์๋ํฌ์ธํธ ์ถ๊ฐ * new/OPS-222 : spaceControllerTest ํ์ผ ์ธํ * refactor/OPS-222 : ํ ์คํธ ํด๋์ค์ ๊ณต์ฉ ํํธ ์ถ์ ํด๋์ค๋ก ๋ถ๋ฆฌ * fix : ์ต์ ์ฌํญ ๋ฐ์ * fix/OPS-222 : ํ ์คํธ ์ฝ๋์์ ํ์ ๋ค๋ฅด๋ ๊ฑฐ ์์ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๊ตฌํ * feat/OPS-222 : space ๋จ์ ํธ๋ค๋ฌ, ์ปค์คํ ์๋ฌ ์์ฑ * fix/OPS-222 : controller ์์ฑ ํ ์คํธ ํต๊ณผ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๋ก์ง ์์ฑ * feat/OPS-222 : ์คํ์ด์ค ์ญ์ ๊ตฌํ * fix/OPS-222 : ํ ์คํธ ์ผ์ด์ค ํต๊ณผ * feat/OPS-245 : controller ๋จ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-245 : ์คํ์ด์ค ๋ช ๋ณ๊ฒฝ ๊ตฌํ * fix/OPS-244 : ์ด๋ฆ ๋ณ๊ฒฝ ์ saveAndFlush๋ก ์ฆ์ ๋ฐ์ * chore/OPS-222 : develop ์ต์ ์ฌํญ ๋ฐ์ * fix : ์ ์ฅ * fix/OPS-222 : globalExceptionHandler ์ปจ๋ฒค์ ํต์ผ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ controller ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-244 : membership ๊ด๋ฆฌ ๋น ์์ฑ * feat/OPS-244 : membership ์์ฑ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ฑ * fix : ํ ์คํธ ์ผ์ด์ค ๊ฐ ์ถฉ๋ ํด๊ฒฐ ์ค * fix : ์ต์ ์ฌํญ ๋ฐ์ * ์์์ ์ฅ * ์ด๊ธฐ ์ํ * fix : ๋ฏธ๋ด์ฑ ์ ์ฉ * feat/OPS-244 : ์คํ์ด์ค ๋ฉค๋ฒ ์ถ๊ฐ ๊ธฐ๋ฅ * fix : spaceControllerTest์ memberControllerTest ๊ฐ ์ถฉ๋ ํด๊ฒฐ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * chore/OPS-244 : ์ธ์ฆ ๊ด๋ จ ์ฝ๋ ์ฃผ์ ์ฒ๋ฆฌ * feat/OPS-270 : ์คํ์ด์ค ๋ก์ง์ ์ฌ์ฉ์ ์ ๋ณด ์ฒดํฌ ์ถ๊ฐ * feat/OPS-22 : ํ ์คํธ ์ผ์ด์ค์ WithUserDetails ๋ฐ์ * feat/OPS-222 : ์ธ์ฆ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * fix : ๋ถํ์ํ ์ฃผ์ ์ญ์ * new/OPS-222 : space controller, sevice, repository ๋น ์์ฑ # Conflicts: # src/main/java/org/tuna/zoopzoop/backend/global/initData/BaseInitData.java * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ์๋ํฌ์ธํธ ์ถ๊ฐ * new/OPS-222 : spaceControllerTest ํ์ผ ์ธํ * refactor/OPS-222 : ํ ์คํธ ํด๋์ค์ ๊ณต์ฉ ํํธ ์ถ์ ํด๋์ค๋ก ๋ถ๋ฆฌ * fix : ์ต์ ์ฌํญ ๋ฐ์ * fix/OPS-222 : ํ ์คํธ ์ฝ๋์์ ํ์ ๋ค๋ฅด๋ ๊ฑฐ ์์ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๊ตฌํ * feat/OPS-222 : space ๋จ์ ํธ๋ค๋ฌ, ์ปค์คํ ์๋ฌ ์์ฑ * fix/OPS-222 : controller ์์ฑ ํ ์คํธ ํต๊ณผ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๋ก์ง ์์ฑ * feat/OPS-222 : ์คํ์ด์ค ์ญ์ ๊ตฌํ * fix/OPS-222 : ํ ์คํธ ์ผ์ด์ค ํต๊ณผ * feat/OPS-245 : controller ๋จ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-245 : ์คํ์ด์ค ๋ช ๋ณ๊ฒฝ ๊ตฌํ * fix/OPS-244 : ์ด๋ฆ ๋ณ๊ฒฝ ์ saveAndFlush๋ก ์ฆ์ ๋ฐ์ * chore/OPS-222 : develop ์ต์ ์ฌํญ ๋ฐ์ * fix : ์ ์ฅ * fix/OPS-222 : globalExceptionHandler ์ปจ๋ฒค์ ํต์ผ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ controller ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-244 : membership ๊ด๋ฆฌ ๋น ์์ฑ * feat/OPS-244 : membership ์์ฑ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ฑ * fix : ํ ์คํธ ์ผ์ด์ค ๊ฐ ์ถฉ๋ ํด๊ฒฐ ์ค * fix : ์ต์ ์ฌํญ ๋ฐ์ * ์์์ ์ฅ * ์ด๊ธฐ ์ํ * fix : ๋ฏธ๋ด์ฑ ์ ์ฉ * feat/OPS-244 : ์คํ์ด์ค ๋ฉค๋ฒ ์ถ๊ฐ ๊ธฐ๋ฅ * fix : spaceControllerTest์ memberControllerTest ๊ฐ ์ถฉ๋ ํด๊ฒฐ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * chore/OPS-244 : ์ธ์ฆ ๊ด๋ จ ์ฝ๋ ์ฃผ์ ์ฒ๋ฆฌ * feat/OPS-270 : ์คํ์ด์ค ๋ก์ง์ ์ฌ์ฉ์ ์ ๋ณด ์ฒดํฌ ์ถ๊ฐ * feat/OPS-22 : ํ ์คํธ ์ผ์ด์ค์ WithUserDetails ๋ฐ์ * feat/OPS-222 : ์ธ์ฆ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * fix : ๋ถํ์ํ ์ฃผ์ ์ญ์ * fix : ๋ถํ์ํ ํ์ผ ์ญ์ --------- Co-authored-by: EpicFn <[email protected]> * Ops 272 be feat ์๋ฃ ์ด๋ฆ ์กฐํ (#31) * feat/OPS-211 : ํด๋ ์ด๋ฆ ๋ณ๊ฒฝ ๊ตฌํ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * feat/OPS-272 : ํด๋/ํ์ผ ์กฐํ ๊ตฌํ * refactor/OPS-272 : tag ์์ฑ์ ์ถ๊ฐ * feat/OPS-195 : ๋ด์ค ๋ชฉ๋ก ์กฐํ ๊ธฐ๋ฅ ๊ตฌํ(์ต์ ๋ด์ค, ํค์๋ ๊ธฐ๋ฐ). ์๋น์ค ํ ์คํธ ์ถ๊ฐ. (#33) * refactor/OPS-277 : default ํด๋ ์๋ ์์ฑ (#34) * [chore/OPS-278] Auth, Member, News ๋๋ฉ์ธ ๋ฌธ์ํ ๋ฐ ๊ณ ๋ํ. (#35) * chore/OPS-278 : Auth ๋๋ฉ์ธ ๋ฌธ์ํ ์๋ฃ & ApiV1MemberController ์ถ๊ฐ ๊ธฐ๋ฅ ๊ตฌํ. * refactor/OPS-278 : ApiV1MemberController ์ถ๊ฐ ์ฌํญ์ ๋ง๊ฒ ํ ์คํธ ์ถ๊ฐ ๊ตฌํ. * refactor/OPS-278 : Member ์์ฑ ์, ๋๋คํ UUID์ ์ 5๊ธ์๋ฅผ ํ๊ทธ๋ก ์ฌ์ฉํ๋๋ก ๋ณ๊ฒฝ. * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- Co-authored-by: EpicFn <[email protected]> * refactor/OPS-283 : datasource ์ํฐํฐ ์์ (#39) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * [feat/OPS-175] ์น ํฌ๋กค๋ง ๋ฐ์ดํฐ ์ ์ ํ ๊ธฐ๋ฅ ๊ตฌํ (#41) * feat/OPS-175 : ์น ํฌ๋กค๋ง ๋ฐ์ดํฐ ์ ์ ํ ๊ธฐ๋ฅ ๊ตฌํ * [refactor/OPS-287] News ๋๋ฉ์ธ ๊ณ ๋ํ (#42) * refactor/OPS-287 : newsSearch ๋ฉ์๋ ๋ก์ง ๋ณ๊ฒฝ ๋ฐ ์ผ๋ถ API ๋ฌธ์ํ. * refactor/OPS-287 : NewsServiceTest API๋ฅผ ํธ์ถํ๋ ๋ฐฉ์์ผ๋ก ๋ณ๊ฒฝ. * Ops 226 be feat ์๋ฃ ๋ฑ๋ก (#44) * refactor/OPS-283 : datasource ์ํฐํฐ ์์ * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- Co-authored-by: EpicFn <[email protected]> * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * feat/OPS-226 : ์๋ฃ ๋ฑ๋ก ๊ตฌํ * refactor/OPS-226 : ๋ฉ์๋ ๋ช ์์ --------- Co-authored-by: Hyeok Jin Kim <[email protected]> Co-authored-by: EpicFn <[email protected]> * Ops 215 be feat ์๋ฃ ์ญ์ (#46) * refactor/OPS-283 : datasource ์ํฐํฐ ์์ * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- Co-authored-by: EpicFn <[email protected]> * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * feat/OPS-226 : ์๋ฃ ๋ฑ๋ก ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ --------- Co-authored-by: Hyeok Jin Kim <[email protected]> Co-authored-by: EpicFn <[email protected]> * [feat/OPS-293] LiveBlocks๋ฅผ ์ํ React-flow ๋ฐ์ดํฐ ๊ด๋ฆฌ ๋๋ฉ์ธ ์ค๊ณ ์๋ฃ. ํ ์คํธ ์ถ๊ฐ. (#47) * feat/OPS-293 : LiveBlocks๋ฅผ ์ํ React-flow ๋ฐ์ดํฐ ๊ด๋ฆฌ ๋๋ฉ์ธ ์ค๊ณ ์๋ฃ. ํ ์คํธ ์ถ๊ฐ. * feat/OPS-293 : folder ํ ์คํธ์ @transactional ์ถ๊ฐ. * feat/OPS-293 : MemberServiceTest ์์ #1 * feat/OPS-293 : MemberServiceTest ์์ #2 * feat/OPS-293 : Folder ํ ์คํธ์ ActiveProfile(test) ์ถ๊ฐ. * feat/OPS-293 : ํ ์คํธ์ ๋ฌด๊ฒฐ์ฑ ๊ฒ์ฆ์ ์ํ @afterall, @AfterEach ์ถ๊ฐ. * feat/OPS-293 : ์ผ๋ถ ์์ . * feat/OPS-293 : ์ง์ง ๋ง์ง๋ง ์์ . * [chore/ops-132] CI/CD ํ์ดํ๋ผ์ธ ๊ตฌ์ถ (#43) * chore/OPS-133 : CI ํ์ดํ๋ผ์ธ ๊ตฌ์ถ * chore: ํ ์คํธ/์ด์ ํ๊ฒฝ์ฉ GitHub Actions Terraform ์๋ ์ธํ๋ผ ์ ์ฉ ์ํฌํ๋ก์ฐ ์ถ๊ฐ * chore : ํ๊ฒฝ๋ณ์๋ก test/prod ์๋ฒ ๋ถ๋ฆฌ ๊ฐ๋ฅํ๋๋ก ์ค์ * chore/OPS-135 : CD ์ํฌํ๋ก์ฐ ์ถ๊ฐ * chore: CI ํ CD ์คํ๋๋๋ก ์ค์ * chore : CI ์ํฌํ๋ก์ฐ job ๋ถ๋ฆฌ(ํ ์คํธ,๋น๋/๋์ปค ๋น๋,ghcr push) * chore : docker build jobs์์ checkout ๋จ๊ณ ์ถ๊ฐ * chore: CI ์ํฌํ๋ก์ฐ job ๊ตฌ๋ถ ์์ฐ * chore : develop/main ๋ธ๋์น์ ๋ฐ๋ผ CI/CD ์ํฌํ๋ก์ฐ ๋ถ๋ฆฌ * chore : Spring Boot Acutator ์์กด์ฑ ์ถ๊ฐ * chore: Actions์์ SSH ์ ์ ํ docker ์คํ ๊ถํ ๊ฐ๋๋ก ์ค์ * chore: ์ปจํ ์ด๋ ์คํ ๋ก๊ทธ ํฐ๋ฏธ๋์ ์ถ๋ ฅ ์ค์ * chore : ํฌ์ค์ฒดํฌ ์ค์ * chore: secrets ์ง์ ssh ํ๊ฒฝ ๋ณ์๋ก ์ ๋ฌ * chore: ํ๊ฒฝ๋ณ์ ์ง์ docker run์ ๋ฃ๊ธฐ * chore: spdocker run ์์ ring profile ์ ๊ฑฐ * chore: nginx ์ค์ * chore: test-cd ์์ * chore: test-cd ์์ 2 * chore: ghcr ๋ก๊ทธ์ธ ํ ํฐ ์์ * chore: ๋์ปค ์ด๋ฏธ์ง pull ์ด๋ฆ ์์ * chore: ssh ๋ด ์์ ํ ghcr ๋ก๊ทธ์ธ * chore : ์ด๋ฏธ pullํ ์ด๋ฏธ์ง์ run ์ด๋ฏธ์ง ์ด๋ฆ ์ผ์น์ํค๊ธฐ * chore: mysql driver ์์กด์ฑ ์ถ๊ฐ * chore : ํฌ์ค์ฒดํฌ ์์ฒญ ์คํ๋ง ์ํ๋ฆฌํฐ ํํฐ์ ๊ฑธ๋ฆฌ์ง ์๋๋ก ์ค์ * chore: nginx ํฌํธ ์ค์์นญ ์ค์ * chore: nginx ํฌํธ ์ค์์นญ ์ค์ ์์ * chore: nginx ํฌํธ ์ค์์นญ ์ค์ ์์ 2 * chore: ์ด์์๋ฒ CD ์ํฌํ๋ก์ฐ ์์ * chore : prod-server ์ํฌํ๋ก์ฐ ํ์ฑํ ๊ฒฝ๋ก ์ค์ * chore : test commit ๋์ค์ ์ง์ฐ๊ธฐ * [Feat/OPS-214] ์คํ์ด์ค ๋ฉค๋ฒ ๊ด๋ฆฌ (#50) * feat/OPS-227 : ์คํ์ด์ค ๋ฉค๋ฒ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-227 : ์คํ์ด์ค ๋ชฉ๋ก ๋ฐํ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-251 : ๊ถํ ๋ณ๊ฒฝ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-214 : ๊ถํ ๋ณ๊ฒฝ ์๋ํฌ์ธํธ ๊ตฌํ * fix/OPS-214 : ๋จ์ ๋ฉ์ธ์ง ์ค๋ฅ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-214 : ๋ก์ง ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-251 : globalExceptionHandler์ ์ญ์ง๋ ฌํ ์คํจ ์๋ฌ ์ถ๊ฐ * refactor/OPS-214 : ๋น์ฆ๋์ค ๋ก์ง์ ์๋น์ค ๊ณ์ธต์ ์ผ์ * feat/OPS-231 : ์คํ์ด์ค ์ด๋ ์ปจํธ๋กค๋ฌ ํ ์คํธ์ผ์ด์ค ์์ฑ * feat/OPS-231 : ์คํ์ด์ค ์ด๋ ๋ก์ง ์์ฑ * feat/OPS-231 : ์คํ์ด์ค์ด๋ ์๋น์ค ๋น ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * feat/OPS-228 : ํ์ ํด์ถ ์ปจํธ๋กค๋ฌ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feeat/OPS-229 : ํ์ ํด์ถ ๊ตฌํ ์๋ฃ * fix : ๊ธฐ์กด ํ ์คํธ ์ผ์ด์ค ์ผ๊ด์ฑ ์๊ฒ ์์ * feat : ๋ฉค๋ฒ ํด์ถ ์๋น์ค ํ ์คํธ ์ฝ๋ ์์ฑ * refactor : DTO ํจํค์ง ๋ณ๊ฒฝ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ์ปจํธ๋กค๋ฌ ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ๋ก์ง ์์ฑ * refactor : space ๋๋ฉ์ธ dto ํจํค์ง ๋ณ๊ฒฝ * feat/OPS-227 : ์คํ์ด์ค ๋ฉค๋ฒ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-227 : ์คํ์ด์ค ๋ชฉ๋ก ๋ฐํ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-251 : ๊ถํ ๋ณ๊ฒฝ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-214 : ๊ถํ ๋ณ๊ฒฝ ์๋ํฌ์ธํธ ๊ตฌํ * fix/OPS-214 : ๋จ์ ๋ฉ์ธ์ง ์ค๋ฅ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-214 : ๋ก์ง ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-251 : globalExceptionHandler์ ์ญ์ง๋ ฌํ ์คํจ ์๋ฌ ์ถ๊ฐ * refactor/OPS-214 : ๋น์ฆ๋์ค ๋ก์ง์ ์๋น์ค ๊ณ์ธต์ ์ผ์ * feat/OPS-231 : ์คํ์ด์ค ์ด๋ ์ปจํธ๋กค๋ฌ ํ ์คํธ์ผ์ด์ค ์์ฑ * feat : ์ต์ ์ฌํญ ๋ฐ์ * feat/OPS-231 : ์คํ์ด์ค์ด๋ ์๋น์ค ๋น ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * feat/OPS-228 : ํ์ ํด์ถ ์ปจํธ๋กค๋ฌ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feeat/OPS-229 : ํ์ ํด์ถ ๊ตฌํ ์๋ฃ * fix : ๊ธฐ์กด ํ ์คํธ ์ผ์ด์ค ์ผ๊ด์ฑ ์๊ฒ ์์ * feat : ๋ฉค๋ฒ ํด์ถ ์๋น์ค ํ ์คํธ ์ฝ๋ ์์ฑ * refactor : DTO ํจํค์ง ๋ณ๊ฒฝ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ์ปจํธ๋กค๋ฌ ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ๋ก์ง ์์ฑ * refactor : space ๋๋ฉ์ธ dto ํจํค์ง ๋ณ๊ฒฝ --------- Co-authored-by: EpicFn <[email protected]> * refactor/OPS-308 : ๋๋ฉ์ธ ๋ถ๋ฆฌ & CI ์ํฌํ๋ก์ฐ์ application-secrets-server.yml ์ถ๊ฐ. (#52) * Ops 255 be feat ์๋ฃ ์์ (#54) * refactor/OPS-283 : datasource ์ํฐํฐ ์์ * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- Co-authored-by: EpicFn <[email protected]> * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * feat/OPS-226 : ์๋ฃ ๋ฑ๋ก ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-255 : ์๋ฃ ์ด๋ ๋ฐ ์์ ๊ตฌํ --------- Co-authored-by: Hyeok Jin Kim <[email protected]> Co-authored-by: EpicFn <[email protected]> * feat/OPS-289 : dataprocessor ์๋น์ค ์์ฑ (#59) * fix/OPS-318 : proxy host ์ค์์นญรฌ๏ฟฝ ssl ์ธ์ฆ์ ์ ์ง (#60) * [refactor/OPS-310] redirect url ๋ณ๊ฒฝ (#53) * refactor/OPS-310 : redirect-url ๋ณ๊ฒฝ. * refactor/OPS-310 : ์์ ์์ . * refactor/OPS-310 : ๋ ํ๋์ ์์ ์์ . * refactor/OPS-310 : ํฐ ์์ . * refactor/OPS-310 : ํ ์คํธ * refactor/OPS-310 : ์์ฒญ ์ฌํญ ๋ฐ์. * refactor/OPS-310 : ์์ฒญ ์ฌํญ ๋ฐ์ #2 * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ (#64) * [refactor/OPS-323] News API ์กฐํ ๋ก์ง ์์ . (#65) * ๋ฐฐํฌ ํ ์คํธ #2 * ๋ก์ง ์์ ํ ์คํธ * ๋ก์ง ์์ ํ ์คํธ #2 * refactor/OPS-322 : source ์นผ๋ผ๋ช ์์ (#68) * refactor/OPS-322 : source ์นผ๋ผ๋ช ์์ * refactor/OPS-322 : source ์นผ๋ผ๋ช ์์ * feat/OPS-321 : dataProcessorService์์ ์์ฝ ๋ก์ง ์์ฑ (#69) * [fix/OPS-317] CI/CD ํ์ดํ๋ผ์ธ ์ด๋ฒคํธ ๋ถ๋ฆฌ (#66) * fix : prod-server nginx ์ ๋ณด ์ถ๋ ฅ ์ ๊ฑฐ * fix : prod-server CD ์ํฌํ๋ก์ฐ main์ push๋ ๋ ์คํ๋๋๋ก ์์ * fix : test-server CI๋ pr์ develop์ ์คํ, CD๋ push๋ ๋ ์คํ * fix : test-server CI ์ํฌํ๋ก์ฐ์์ CD ๋ถ๋ถ ์ ๊ฑฐ * chore : ๋น๋์ aws๊ด๋ จ ์ ๋ณด application-secret.yml์ ๋ค์ด๊ฐ๋๋ก ์ค์ (#73) * chore : S3 ์ฌ์ฉ์ ์ํด ๋น๋์ AWS ์ ๋ณด application-secrets.yml์ ์ถ๊ฐ๋๋๋ก ์ค์ * chore : ์ญํ ์ S3 ์ ๊ทผ ์ ์ฑ ๋ถ์ฐฉ ํ๋๋ก ์ค์ * chore : รฃyml์ ์ถ๊ฐ์ ๋ณด ๋ฃ๋๋ก ์ค์ * [Feat/OPS-275] ์คํ์ด์ค ์ธ๋ค์ผ ์ด๋ฏธ์ง ์ ์ฅ (#71) * chore : S3 ํ๊ฒฝ ์ค์ * feat : S3Service ๊ตฌ์ฑ * chore : multipart ๋ฐ์ดํฐ ํฌ๊ธฐ ์ค์ * feat : S3 ์ ๋ก๋ ํ ์คํธ์ฉ ์๋ํฌ์ธํธ ์์ฑ * feat : S3 ์ฐ๋ ์๋ฃ * feat : space entity์ imageUrl ํญ๋ชฉ ์ถ๊ฐ * feat : ์ธ๋ค์ผ ์บก์ฒ ํ ์คํธ์ฉ * feat : ์ธ๋ค์ผ ์ดฌ์ ํ ์คํธ ์๋ํฌ์ธํธ ์์ฑ * feat : ์คํ์ด์ค ์ธ๋ค์ผ ๊ฐฑ์ API ์์ฑ * feat : ์คํ์ด์ค ์ด๋ฏธ์ง ๊ฐฑ์ ๊ธฐ๋ฅ ์์ฑ * feat : ์คํ์ด์ค ๋ชฉ๋ก ๋ฐํ ์ ์ธ๋ค์ผ url ๊ฐ์ด ๋ฐํ * feat : ์คํ์ด์ค ๋จ๊ฑด ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat : ์คํ์ด์ค ๋จ๊ฑด ์กฐํ ๊ตฌํ * feat : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ํ์ด์ง ๊ธฐ๋ฅ ์ถ๊ฐ --------- Co-authored-by: EpicFn <[email protected]> * [feat/OPS-324] ํฌ๋กฌ ํ์ฅ ํ๋ก๊ทธ๋จ ์์ ๋ก๊ทธ์ธ ๋ถ๊ธฐ & ์์ ๋ก๊ทธ์ธ ํ ์คํธ API ์ถ๊ฐ. (#70) * feat/OPS-324 : ํ์ฅ ํ๋ก๊ทธ๋จ ๋ถ๊ธฐ ๋ฐ ์์ ๋ก๊ทธ์ธ ํ ์คํธ API ์ถ๊ฐ. * feat/OPS-324 : ํ ์คํธ ๋ก์ง ์ผ๋ถ ์์ . * feat/OPS-324 : ํ ์คํธ ๋ก์ง ์ผ๋ถ ์์ . #2 * feat/OPS-324 : ํ ์คํธ ์๋ฃ, ํ ์คํธ ์ฝ๋ ์ ๊ฑฐ. * feat/OPS-324 : ๋ก๊ทธ์ธ ๋ถ๊ธฐ ์์ . * feat/OPS-324 : state ์ ๋ณด๋ฅผ ์ ์ฅํ๋ resolver ์ถ๊ฐ. * feat/OPS-324 : session ๋ฑ๋ก์ ์ํ OAuth2LoginSourceFilter ํด๋์ค ์ถ๊ฐ. * feat/OPS-324 : ํด๊ฒฐ * fix : ci ์ secrets ์์ S3 ๊ด๋ จ ์ํฌ๋ฆฟ ๊ฐ ์ญ์ ํ๋๋ก ๋ณ๊ฒฝ(๋ฒํท๋ช ์ ์ธ) (#74) * fix : ci ์ secrets ์์ S3 ๊ด๋ จ ์ํฌ๋ฆฟ ๊ฐ ์ญ์ ํ๋๋ก ๋ณ๊ฒฝ(๋ฒํท๋ช ์ ์ธ) * fix : CI ์คํ ์์ * fix : build ๋จ๊ณ์์ testest๋ฅผ ์ํํ์ง ์๋๋ก ๋ณ๊ฒฝ --------- Co-authored-by: EpicFn <[email protected]> * [feat/OPS-198] ์์นด์ด๋ธ ์ ๋ณด๋ก ๋ด์ค ๋ชฉ๋ก ์กฐํ (#75) * feat/OPS-198 : ์์นด์ด๋ธ ๊ธฐ๋ฐ ๋ด์ค ์กฐํ ๊ตฌํ. * feat/OPS-198 : ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ. * feat/OPS-265 : LLM-ํ์ฉ-๋ฐ์ดํฐ-์ ์ ํ-์-๊ธฐ์กด-์์นด์ด๋ธ์-ํ๊ทธ-์ฐ๋ (#77) * refactor/OPS-319: ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ (#76) * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * fix : SpringDoc๊ณผ Spring AI ๊ฐ ์์กด์ฑ ์ถฉ๋ ํด๊ฒฐ (#79) * [Feat/OPS-327] ์๋ฃ ๋ฑ๋ก llm ์ฐ๋ (#78) * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-327 : ์๋ฃ ๋ฑ๋ก LLM ์ฐ๋ * [feat/OPS-328] ์ธ์ฆ/์ธ๊ฐ ๋ก์ง ๋ณ๊ฒฝ (#80) * feat/OPS-328 : RefreshToken์ ์๋ฒ์์ ์ ์ฅํ๋๋ก ๋ณ๊ฒฝ. API ์ผ๋ถ ์์ . * feat/OPS-328 : ํ์ฅ ํ๋ก๊ทธ๋จ ๋ก๊ทธ์ธ ๋ฉ์๋ ์ถ๊ฐ ๋ฐ ๋ฐ์ดํฐ ์บ์ฑ ๋ฉ์๋ ์ถ๊ฐ. * [refactor/OPS-337] ์๊ตฌ์ฌํญ ๋ฐ์ ๋ฐ ์ผ๋ถ ๋ก์ง ์์ . (#81) * refactor/OPS-337 : ํ๋ก ํธ ์๊ตฌ์ฌํญ ๋ฐ์ ๋ฐ ์๋ฌ ์์ . * refactor/OPS-337 : ํ ์คํธ ์ผ์ด์ค ์์ . * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ (#82) * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : mock ์ถ๊ฐ๋ก ์ธํ testcase ์์ * [feat/OPS-338] ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ (#83) * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : mock ์ถ๊ฐ๋ก ์ธํ testcase ์์ * refactor/OPS-338 : Dev ํ ํฐ ๋ฐ๊ธ ์ปจํธ๋กค๋ฌ ์ถ๊ฐ * [Feat/OPS-326] ๋์๋ณด๋ ๋ฐ์ดํฐ ์ ์ฅ ์ฒด๊ณ ๊ตฌ์ถ (#85) * refactor : graph ๋๋ฉ์ธ์ dashboard ๋๋ฉ์ธ์ผ๋ก ์์ , dashboard ์ํฐํฐ ์์ฑ * feat : ์คํ์ด์ค ๋จ๊ฑด ์กฐํ ์ ๋์๋ณด๋ id๋ ํจ๊ป ๋ฐํ * refactor : API ๋ช ๋ณ๊ฒฝ * dashboard ๊ธฐ๋ฐ์ผ๋ก ์ ์ฅ/์กฐํ ๋๋๋ก ๋ณ๊ฒฝ * refactor : ํ ์คํธ ์ฝ๋ ์์ * fix : ๋ฐํ ๋ฉ์ธ์ง ์์ * feat : ์๋ช ๊ฒ์ฆ ๋ก์ง ๊ตฌํ * refactor : signature ์๋น์ค ๋ถ๋ฆฌ * fix : ์คํ ์์ * fix : CI ํ์ดํ๋ผ์ธ ์์ --------- Co-authored-by: EpicFn <[email protected]> * [feat/OPS-329] Sentry๋ฅผ ํตํ ๋ชจ๋ํฐ๋ง ํ๊ฒฝ ๊ตฌ์ถ. (#86) * feat/OPS-329 : Sentry๋ฅผ ํตํ ๋ชจ๋ํฐ๋ง ํ๊ฒฝ ๊ตฌ์ถ. * feat/OPS-329: ์ถ๊ฐ๋ก ํ๋ก ํธ ์๊ตฌ ์ฌํญ ๋ฐ์. * refactor/OPS-353 : ๋ถ๋ฆฌ ์๋ฃ. (#87) * [refactor/OPS-354] ํ ์คํธ ์ผ์ด์ค ์ฌ์ฉ ํ๋กํ ๋ณ๊ฒฝ. (#88) * refactor/OPS-354 : ํ ์คํธ ์ผ์ด์ค ์ฌ์ฉ ํ๋กํ ๋ณ๊ฒฝ. * refactor/OPS-354 : ์ด๋๋ ์๋ผ? * refactor/OPS-355 : ์๊ตฌ ์ฌํญ ๋ฐ์. (#91) * feat/OPS-358: Redis ์์กด์ฑ ์ถ๊ฐ ๋ฐ RedisConfig ์ค์ ์๋ฃ. AuthResultData ์ง๋ ฌํ ๋ฐ AuthResult ํด๋์ค์ TTL ๋์ . (#92) * feat/OPS-356 : ๋ค์ด๋ฒ ๋ธ๋ก๊ทธ ํฌ๋กค๋ฌ ์์ฑ (#93) * [feat/OPS-252] ์กฐ๊ฑด๋ณ ์๋ฃ ๊ฒ์ (#89) * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-327 : ์๋ฃ ๋ฑ๋ก LLM ์ฐ๋ * refactor/OPS-252 : ์กฐ๊ฑด๋ณ ์๋ฃ ๊ฒ์ ๊ตฌํ * refactor/OPS-252 : ์กฐ๊ฑด๋ณ ์๋ฃ ๊ฒ์ * fix : ์คํ์ด์ค, ์ฌ์ฉ์ ๋ชฉ๋ก ๋ฐํ ์ ํญ์ id ์ค๋ฆ์ฐจ์ ์ ๋ ฌ (#94) Co-authored-by: EpicFn <[email protected]> * IllegalStateException(๋์์ฑ ๋ฌธ์ )๊ด๋ จ ์ฒ๋ฆฌ ๋ฉ์๋ ์ถ๊ฐ. (#95) * [fix/OPS-362] ์๊ตฌ ์ฌํญ ๋ฐ์ (#96) * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์. * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#2 * [feat/OPS-341] ๋ฒจ๋ก๊ทธ ํฌ๋กค๋ฌ ์์ฑ (#90) * feat/OPS-341 : Velog ํฌ๋กค๋ฌ ์์ฑ * fix : createDate,modifyDate ์๋ ์ ์ฉ๋๋๋ก ์ค์ * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#3 (#97) * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#4 (#98) * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#5 (#99) * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#6 (#100) * [refactor/OPS-360] folder&datasource ๋ฆฌํํ ๋ง (#101) * refactor/OPS-360 : OpenAPI ์ ๋ํ ์ด์ ์ถ๊ฐ * refactor/OPS-360 : NoResultException ์์ธ ๋ถ๋ฆฌ * refactor/OPS-360 : param ์ถ๊ฐ * refactor/OPS-360 : param ์ถ๊ฐ * refactor/OPS-360 : default ํด๋ CRUD ๋ก์ง ์์ * refactor/OPS-360 : ํด๋ ๋ฆฌ์คํธ๋ ํธ์ถ ๋ก์ง ์์ * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#7 (#102) * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#8 (#103) * hotfix/OPS-346 : ํ์ผ ์กฐํ ์์ (#104) * [feat/OPS-365 ] soft delete + ํด์งํต ์กฐํ ๊ตฌํ (#105) * feat/OPS-365 : soft delete + ํด์งํต ์กฐํ ๊ตฌํ * refactor/OPS-246 : ์๊ตฌ์ฌํญ ๋ฆฌํฉํ ๋ง * chore : rabbitmq ํ๊ฒฝ์ค์ (#106) * chore : rabbitmq ๋ก์ปฌ ๊ฐ๋ฐ ํ๊ฒฝ ์ค์ * chore : rabbitmq ๊ด๋ จ springboot ํ๊ฒฝ ์ค์ * chore: rabbitmq ์์กด์ฑ ์ถ๊ฐ * [Feat/OPS-344] message queue ๊ตฌํ (#107) * chore : RabbitMQ ํ๊ฒฝ ์ค์ * chore : CI ํ์ดํ๋ผ์ธ์์ RabbitMQ ์ปจํ ์ด๋๋ฅผ ๋์์ ์ฌ์ฉํ๋๋ก ์ค์ * new : RabbitMQ ์ค์ ํด๋์ค, dto ์์ฑ * feat : producer method ์์ฑ * feat : ๋ฉ์ธ์ง ํ ๊ตฌํ ์๋ฃ * feat : ๋ฐ์ดํฐ ์ ์ฅ ์์ฒญ ํ ์คํธ ์ผ์ด์ค ์์ * feat : ConsumerTest ์ฝ๋ ์ถ๊ฐ * fix : ์ ์ฅ ํ ์คํธ ์ผ์ด์ค ์ฑ๊ณต * fix : ํ ์คํธ ์ฝ๋ ์์ ์ค * fix : ํ ์คํธ ์ผ์ด์ค ์ฑ๊ณต * feat : dlq ๋์ * feat : ๋ฐ์ดํฐ ์์ ๋ณด์ฅ์ ์ํด version ์ถ๊ฐ * refactor : MQConfig ํ์ผ ์์น ๋ณ๊ฒฝ * chore : RabbitMQ ํ๊ฒฝ ์ค์ # Conflicts: # docker-compose.yml # src/main/resources/application.yml * chore : CI ํ์ดํ๋ผ์ธ์์ RabbitMQ ์ปจํ ์ด๋๋ฅผ ๋์์ ์ฌ์ฉํ๋๋ก ์ค์ * new : RabbitMQ ์ค์ ํด๋์ค, dto ์์ฑ * feat : producer method ์์ฑ * feat : ๋ฉ์ธ์ง ํ ๊ตฌํ ์๋ฃ * feat : ๋ฐ์ดํฐ ์ ์ฅ ์์ฒญ ํ ์คํธ ์ผ์ด์ค ์์ * feat : ConsumerTest ์ฝ๋ ์ถ๊ฐ * fix : ์ ์ฅ ํ ์คํธ ์ผ์ด์ค ์ฑ๊ณต * fix : ํ ์คํธ ์ฝ๋ ์์ ์ค * fix : ํ ์คํธ ์ผ์ด์ค ์ฑ๊ณต * feat : dlq ๋์ * feat : ๋ฐ์ดํฐ ์์ ๋ณด์ฅ์ ์ํด version ์ถ๊ฐ * refactor : MQConfig ํ์ผ ์์น ๋ณ๊ฒฝ * fix : ์ต์ ์ฌํญ ๋ฐ์ * fix : copilot review ๋ฐ์ * feat : Dashboard์์ graph ์ฐธ์กฐ ๋ฐฉ์ EAGER -> LAZY ๋ก ๋ณ๊ฒฝ * CI ์คํจํด์ ๋ค์ EAGER๋ก ๋ณ๊ฒฝ * fix : ๋ค์ LAZY๋ก ๋ณ๊ฒฝ --------- Co-authored-by: EpicFn <[email protected]> * [Refactor/OPS-373] ์๋ฃ ์กฐํ ๊ฒ์ ์๊ตฌ์ฌํญ ์์ (#108) * refactor/OPS-373 : ์๋ฃ ์ด๋ฆ unique ์์ฑ ์ญ์ * refactor/OPS-373 : ์๋ฃ ์์ ๊ฐ๋ฅ ์นผ๋ผ ์ถ๊ฐ * refactor/OPS-373 : ๋ช ์์ null๊ณผ ๋ฏธ์ ๋ฌ ๊ตฌ๋ถ * [Feat/OPS-376] ์คํ์ด์ค ๋ชฉ๋ก ์ฐธ์ฌ ์ธ์ ๋ฐํ api ๊ตฌ์ฑ (#109) * refactor : dto ์ด๋ฆ ์ผ๋ถ ๋ณ๊ฒฝ * feat : ๊ตฌํ ์๋ฃ * feat : ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * fix : ํ ์คํธ ์ผ์ด์ค ์์ --------- Co-authored-by: EpicFn <[email protected]> * [Refactor/OPS-290] ๋ฐ์ดํฐ์์ค ์ ์ ํ ๊ธฐ๋ฅ ๊ณ ๋ํ (#112) * refactor/OPS-290 : ๋ฐ์ดํฐ์์ค ์ ์ ํ ๊ธฐ๋ฅ ๊ณ ๋ํ * [Feat/OPS-346] ๊ณต์ ํด๋ ๊ด๋ฆฌ (#113) * refactor/OPS-360 : OpenAPI ์ ๋ํ ์ด์ ์ถ๊ฐ * refactor/OPS-360 : NoResultException ์์ธ ๋ถ๋ฆฌ * refactor/OPS-360 : param ์ถ๊ฐ * refactor/OPS-360 : param ์ถ๊ฐ * refactor/OPS-360 : default ํด๋ CRUD ๋ก์ง ์์ * refactor/OPS-360 : ํด๋ ๋ฆฌ์คํธ๋ ํธ์ถ ๋ก์ง ์์ * refactor/OPS-346 : ๊ณต์ ํด๋ ๊ด๋ฆฌ * feat/OPS-365 : soft delete + ํด์งํต ์กฐํ ๊ตฌํ * feat/OPS-346 : ๊ณต์ ํด๋ ๊ด๋ฆฌ * feat/OPS-346 : ๊ณต์ ํด๋ ๊ด๋ฆฌ * refactor/OPS-346 : ๊ฐ์ธ / ๊ณต์ ํณ๋ ๊ด๋ฆฌ ๋ถ๋ฆฌ * refactor/OPS-346 : ๊ฒ์ ๊ธฐ๋ฅ ์ถ์ฒ ๋๋ฝ ์์ * feat : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ์ ์์ฑ ์ผ์๋ ๋ฐํ (#114) Co-authored-by: EpicFn <[email protected]> * [feat/OPS-377] ์ด์/ํ ์คํธ ์๋ฒ ๋ถ๋ฆฌ ์์ (#115) * feat/OPS-377 : ํ ์คํธ/์ด์ ํ๊ฒฝ ๋ถ๋ฆฌ * feat/OPS-377 : ํ ์คํธ/์ด์ ํ๊ฒฝ ๋ถ๋ฆฌ #2 * feat/OPS-377 : ํ ์คํธ/์ด์ ํ๊ฒฝ ๋ถ๋ฆฌ #3 * feat/OPS-377 : ํ ์คํธ/์ด์ ํ๊ฒฝ ๋ถ๋ฆฌ #4 * [Fix/OPS-378] ๋์๋ณด๋ ํ์ entity ์์ (#117) * fix : node, edge dto ์์ * fix : ํ ์คํธ ์ผ์ด์ค ์์ * fix : ํ ์คํธ ์์ ์๋ฃ * fix : ์คํ ์์ * fix : ์คํ ์ถ๊ฐ ์์ ; --------- Co-authored-by: EpicFn <[email protected]> * [Feat/OPS-379] liveblocks ์ฐ๋ (#118) * new : Liveblock API ํธ์ถ์ ์ํ Client ๋น ์์ฑ * feat : ์คํ์ด์ค ์์ฑ/์ญ์ ์ liveblocks room ๋ ํจ๊ป ์์ฑ/์ญ์ * fix : test ์ mock ๋น ์ฌ์ฉ * feat : jwt ๋ฐ๊ธ ๋ก์ง ๊ตฌํ --------- Co-authored-by: EpicFn <[email protected]> * [Feat/OPS-246] ๊ณต์ ํ์ผ ๊ด๋ฆฌ (#119) * refactor/OPS-360 : OpenAPI ์ ๋ํ ์ด์ ์ถ๊ฐ * refactor/OPS-360 : NoResultException ์์ธ ๋ถ๋ฆฌ * refactor/OPS-360 : param ์ถ๊ฐ * refactor/OPS-360 : param ์ถ๊ฐ * refactor/OPS-360 : default ํด๋ CRUD ๋ก์ง ์์ * refactor/OPS-360 : ํด๋ ๋ฆฌ์คํธ๋ ํธ์ถ ๋ก์ง ์์ * refactor/OPS-346 : ๊ณต์ ํด๋ ๊ด๋ฆฌ * feat/OPS-365 : soft delete + ํด์งํต ์กฐํ ๊ตฌํ * feat/OPS-346 : ๊ณต์ ํด๋ ๊ด๋ฆฌ * feat/OPS-346 : ๊ณต์ ํด๋ ๊ด๋ฆฌ * feat/OPS-246 : ๊ณต์ ํ์ผ ๊ด๋ฆฌ * refactor/OPS-346 : ๊ฐ์ธ / ๊ณต์ ํณ๋ ๊ด๋ฆฌ ๋ถ๋ฆฌ * refactor/OPS-346 : ๊ฐ์ธ / ๊ณต์ ํ์ผ ๊ด๋ฆฌ ๋ถ๋ฆฌ * refactor/OPS-346 : ๊ฒ์ ๊ธฐ๋ฅ ์ถ์ฒ ๋๋ฝ ์์ * feat/OPS-246 : ๊ฐ์ธ / ๊ณต์ ํ์ผ ๊ด๋ฆฌ ๋ถ๋ฆฌ * feat/OPS-246 : api ์์ฒญ ์์ * feat/OPS-246 : api ์์ฒญ ์์ - request ์ด๋ฆ ํต์ผ * refactor/OPS-246 : ๋จธ์ง * refactor/OPS-246 : ๋จธ์ง * [Feat/OPS-388] ๋ค๊ฑด์ญ์ DELETE ๋ณธ๋ฌธ ์์ (#122) * refactor/OPS-388 : ๋ค๊ฑด์ญ์ DELETE ๋ณธ๋ฌธ ์์ * refactor/OPS-388 : ๋ค๊ฑด์ญ์ DELETE ํ ์คํธ ์ผ์ด์ค ์์ * Hotfix/์คํ์ด์ค์ด๋๋ชฉ๋ก ๋ฐํ ์ invite id ํฌํจ (#123) * fix : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์ inviteId ๋ฐํํ๋๋ก ๋ณ๊ฒฝ * fix : ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ --------- Co-authored-by: EpicFn <[email protected]> * [Feat/OPS-379] liveblocks ์ฐ๋ (#124) * new : Liveblock API ํธ์ถ์ ์ํ Client ๋น ์์ฑ * feat : ์คํ์ด์ค ์์ฑ/์ญ์ ์ liveblocks room ๋ ํจ๊ป ์์ฑ/์ญ์ * fix : test ์ mock ๋น ์ฌ์ฉ * feat : jwt ๋ฐ๊ธ ๋ก์ง ๊ตฌํ * fix : SpaceArchiveDataSourceControllerTest์์ liveblocks ๋น mock ์ฒ๋ฆฌ * fix : ์คํ ์์ --------- Co-authored-by: EpicFn <[email protected]> * refactor : secrets๊ฐ ์ปจํ ์ด๋ ์คํ์ ํ๊ฒฝ๋ณ์๋ก ์ฃผ์ ๋๋๋ก ์์ (#120) * refactor: ๋น๋ ์ secrets.yml ํ์ผ ์ญ์ * refactor : ํ ์คํธ ์๋ฒ ํ๊ฒฝ๋ณ์ ์ฃผ์ ์ค์ * refactor : ์ด์์๋ฒ ํ๊ฒฝ๋ณ์ ์ฃผ์ ์ค์ * refactor : ์ด์ํ๊ฒฝ๋ณ YML ๋ถ๋ฆฌ ๋ฐ ๋ฐฐํฌ ํ๊ฒฝ ์ค์ ๊ตฌ์กฐ ๊ฐ์ * refactor : ๋ก์ปฌ(dev,test).yml ๋ณต๊ตฌ * refactor : ๋น๋์ ํ ์คํธ secrets.yml V2๋ก ๋ณ๊ฒฝ * refactor: gradle ํ ์คํธ์ ํ๊ฒฝ๋ณ์๋ก ์ค์ ๊ฐ ์ฃผ์ * refactor: ymlํ์ผ ๋ค์ฌ์ฐ๊ธฐ ์์ * refactor: yml ํ๋ ์ด์คํ๋ ๋ค์ด๋ฐ ๊ท์น ์ผ๊ด์ฑ ์ ์งํ๋๋ก ์์ * [Feat/ops-379] feat liveblocks ์ฐ๋ (#127) * new : Liveblock API ํธ์ถ์ ์ํ Client ๋น ์์ฑ * feat : ์คํ์ด์ค ์์ฑ/์ญ์ ์ liveblocks room ๋ ํจ๊ป ์์ฑ/์ญ์ * fix : test ์ mock ๋น ์ฌ์ฉ * feat : jwt ๋ฐ๊ธ ๋ก์ง ๊ตฌํ * fix : SpaceArchiveDataSourceControllerTest์์ liveblocks ๋น mock ์ฒ๋ฆฌ * fix : ์คํ ์์ * new : Liveblock API ํธ์ถ์ ์ํ Client ๋น ์์ฑ # Conflicts: # src/main/java/org/tuna/zoopzoop/backend/global/clients/liveblocks/LiveblocksClient.java --------- Co-authored-by: EpicFn <[email protected]> * fix : ์คํ ์์ (#128) Co-authored-by: EpicFn <[email protected]> * [Hotfix] ํ์ดํ๋ผ์ธ ์คํ ์์ (#129) * fix : ์คํ ์์ * fix : bucket ์คํ ์์ * fix: S3 ๊ด๋ จ ๊ฐ ๋กค๋ฐฑ --------- Co-authored-by: EpicFn <[email protected]> * refactor: s3 prefix separation (#131) * refactor: S3 prefix ํ๊ฒฝ๋ณ์ ๋ถ๋ฆฌ ๋ฐ server ํ๋กํ์ผ ์ค์ ์ถ๊ฐ * fix: cd ์คํ ์์ * fix : docker run ์ฃผ์ ์์ฐ * refactor: s3 prefix separation (#132) * refactor: S3 prefix ํ๊ฒฝ๋ณ์ ๋ถ๋ฆฌ ๋ฐ server ํ๋กํ์ผ ์ค์ ์ถ๊ฐ * fix: cd ์คํ ์์ * fix : docker run ์ฃผ์ ์์ฐ * fix: bucket ์คํ ์์ * fix: ์คํ ์ ๊ฑฐ * [fix/OPS-390] Secret ๊ฐ ๊ด๋ จ ์ผ๋ถ ์์ (#126) * fix/OPS-390 : secret ํ ํ๋ฆฟ ๋ฐ ์์ ์ฌํญ์ ๋ง๊ฒ ์ฝ๋ ๋ณ์๋ช ๋ณ๊ฒฝ. * feat/OPS-390: NEWS API ์์ ์ถ๊ฐ ์ฌํญ ๋ฐ์. * feat/OPS-390: CI ์ํฌํ๋ก์ฐ ์ผ๋ถ ์์ . * feat/OPS-390: ์ผ๋ถ placeholders ์์ . * feat/OPS-390: ์ผ๋ถ ๋ฌธ์ํ ํญ๋ชฉ ์์ . * refactor: s3 prefix ๋ถ๋ฆฌ ๋ฐ ci/cd ์์ ํ (#134) * refactor: S3 prefix ํ๊ฒฝ๋ณ์ ๋ถ๋ฆฌ ๋ฐ server ํ๋กํ์ผ ์ค์ ์ถ๊ฐ * fix: bucket ์คํ ์์ * [Hotfix] ๋ก๊ทธ์ธ ์๋ฌ ์์ (#135) * Update README.md * Remove unnecessary blank line in ApiV1DashboardController * [Feat/OPS-389] ์คํ์ด์ค ์ด๋ ์๋ฆผ ๊ตฌํ (#136) * new : emitter ๊ด๋ฆฌ service, controller ์์ฑ * feat : ํํธ๋นํธ ๋ก์ง ๊ตฌํ * fix : ๋น๋๊ธฐ ์ฒ๋ฆฌ ํ๋๋ก ๋ณ๊ฒฝ * feat : ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * fix : ํ ์คํธ ์์ * fix : ๋ถํ์ํ ์ด๋ ธํ ์ด์ ์ญ์ --------- Co-authored-by: EpicFn <[email protected]> * [feat/OPS-392] ์ฌ์ฉ์ ๊ฒ์ ๊ธฐ๋ฅ ์ถ๊ฐ (#137) * feat/OPS-392: ๊ฒ์ ๊ธฐ๋ฅ ์ถ๊ฐ & ElasticSearch ๊ตฌํ & ์ผ๋ถ ๋๋ฉ์ธ ์ค๋ฅ ์์ . * feat/OPS-392: CI ์ํฌํ๋ก์ฐ์ ElasticSearch ์๋น์ค ์ปจํ ์ด๋ ์์ฑ ๋ก์ง ์ถ๊ฐ. * feat/OPS-392: CI ์ํฌํ๋ก์ฐ์ ElasticSearch ์๋น์ค ์ปจํ ์ด๋ ์์ฑ ๋ก์ง ์ถ๊ฐ #2 * feat/OPS-392: ์ถ๊ฐ ๋๋ฉ์ธ ์ค๋ฅ ์์ . * feat/OPS-392: Docker-compose์ elastic-search ์๋น์ค ํญ๋ชฉ ์ถ๊ฐ. * fix: ๋๋ฉ์ธ ์์ฒญ ์ฌํญ์ ๋ง๊ฒ ์์ . (#138) * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. (#139) * ๋ฐฐํฌ์ฉ ์ปค๋ฐ (#140) * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #2 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. (#142) * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #2 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #3 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #4 * [Feat/OPS-391] ์์นด์ด๋ธ ์๋ฃ img ์๋ฃ ํ์ ์์ (#141) * feat/OPS-391 : ์ด๋ฏธ์ง ์์ multi part ๊ตฌํ * feat/OPS-391 : ์ด๋ฏธ์ง ์์ multi part ๊ตฌํ * refactor/OPS-391 : enum ๋์๋ฌธ์ ๋ฌด์ * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. (#143) * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #2 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #3 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #4 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #5 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #6 * fix: ์ด์์๋ฒ rabbitmq ํ๊ฒฝ๋ณ์ ์ค์ (#144) * feat/OPS-393 : ํฐ์คํ ๋ฆฌ ํฌ๋กค๋ฌ ์์ฑ (#145) * fix/OPS-394: API ๋ฌธ์ํ ๋ฐ s3 ์ค๋ฅ ์์ #1 (#146) * [fix/OPS-394] ๋ฌธ์ํ ๋ฐ ์ค๋ฅ ์์ 3 (#148) * fix/OPS-394: API ๋ฌธ์ํ ๋ฐ s3 ์ค๋ฅ ์์ #3 * fix/OPS-394: API ๋ฌธ์ํ ๋ฐ s3 ์ค๋ฅ ์์ #4 * refactor/OPS-395: ๊ฒ์ ๋ก์ง ์์ . (#149) * fix: ๋ฒจ๋ก๊ทธ ํฌ๋กค๋ฌ ์์ฑ์ผ์ ํ์ฑ ์ด์ ํด๊ฒฐ (#111) * fix : ์์ฑ์ผ์ ํ์ฑ ์ด์ ํด๊ฒฐ * refactor: velog ํฌ๋กค๋ฌ ์ฐ์ ์์ ๋๊ฒ ์ค์ * fix: ๋ฒจ๋ก๊ทธ ํฌ๋กค๋ฌ ์์ธ ์ฒ๋ฆฌ ์ถ๊ฐ (HTML ์์ ์์ ์ ๋น ๋ฌธ์์ด, ์์ฑ์ผ ์์ ์ ๊ธฐ๋ณธ๊ฐ) * fix : docker ์คํ์ AWS ํ๊ฒฝ๋ณ์๊ฐ ์ ๊ฑฐ (#150) * fix: ์ค๋ฐ๊ฟ ๋ฌธ์ ๋ค ๊ณต๋ฐฑ ์ ๊ฑฐ ๋ฐ OPENAI API Key ์ด์ํ๊ฒฝ๊ฐ ๋ถ๋ฆฌ (#152) * refactor/OPS-396: n-gram analyzer ์ ์ฉ์ ํตํ ๊ฒ์ ๊ฒฐ๊ณผ ํฅ์ & OAuth2SuccessHandler ๋ก์ปฌ ํ๊ฒฝ ๋ถ๊ธฐ. (#154) * refactor/OPS-398: ์ธ์ฆ/์ธ๊ฐ ์ค๋ฅ ์์ (#155) * [Refactor/OPS-380] ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ๊ฐ์ (#156) * refactor : membership ์กฐํ ์ lazy loading์ ์ํ n+1 ๋ฌธ์ ๊ฐ์ * refactor : space์ member ๋ชฉ๋ก ์กฐํ ์ n+ 1 ๋ฌธ์ ํด๊ฒฐ --------- Co-authored-by: EpicFn <[email protected]> * Update README.md (#157) * Create DEV_GUIDE.md (#158) * Update README.md (#159) * fix/OPS-399: ๋ฆฌํ๋ ์ ํ ํฐ ์ด์ ์์ . (#160) * refactor/OPS-397 : ๊ฒ์ ์๊ตฌ์ฌํญ ๋ฐ์ (#161) * hotfix : ์คํ์ด์ค ์ด๋ฏธ์ง ์ ์ฅ ๋ก์ง ์์ (#163) * fix : ํ์ฅ์ ์ถ๊ฐํ๊ณ ๋ก๊ทธ ๋ฑ๋๋ก ๋ณ๊ฒฝ * fix : prefix ๋ก ๊ตฌ๋ถํ๋๋ก ๋ณ๊ฒฝ * fix : CI ๊ณผ์ ์ ๋๋ฏธ prefix ๊ฐ ์ถ๊ฐ * fix : ํ๊ฒฝ ํ์ผ์ prefix ์ถ๊ฐ * fix : ์คํ ์์ --------- Co-authored-by: EpicFn <[email protected]> * fix/OPS-399: ๋ฆฌํ๋ ์ ํ ํฐ ์ด์ ์์ #2 (#165) * fix : ์ด๋ฏธ์ง ๊ฒฝ๋ก ๋ฐ ๋ฐํ ํ์ ์์ (#166) Co-authored-by: EpicFn <[email protected]> * fix : Url ์์ (#167) Co-authored-by: EpicFn <[email protected]> * fix/OPS-400 : ์์ &์ญ์ ์๊ตฌ์ฌํญ ๋ฐ์ (#169) * fix: ์ด์์๋ฒ/ํ ์คํธ์๋ฒ vpc ๋ถ๋ฆฌ๋์ด ์์ด, rabbitmq host ๋ ๋ถ๋ฆฌ (#171) * fix : ๋ฉค๋ฒ ์ญ์ ์ ์ ๋ น ์คํ์ด์ค ์ญ์ ๋ก์ง ๊ตฌํ (#172) Co-authored-by: EpicFn <[email protected]> * Develop -> main ๋ณํฉ (#168) (#173) * [feat/OPS-262] GlobalExceptionHandler ์ค์ (#8) * feat: GlobalExceptionHandler ์งํ ์ฌํญ ์ ์ฅ. * feat/OPS-262 : GlobalExceptionHandler ์์ฑ ์๋ฃ. * [feat/OPS-126] Member ๋๋ฉ์ธ ๊ธฐ์ด ์ค๊ณ (#9) * feat/OPS-127 : Member ์ํฐํฐ ์์ฑ(ํ๋, ์ฐ๊ด ๊ด๊ณ, ์์ฑ์, ๋ฉ์๋) * feat/OPS-128 : MemberRepository ์์ฑ(name, email ๊ฒ์ ์ต์ ์ถ๊ฐ) * feat: GlobalExceptionHandler ์์ฑ์ ์ํ ์งํ ์ฌํญ ์ ์ฅ. * feat/OPS-129 : MemberService ์์ฑ(์กฐํ, ์์ฑ/์์ , ์ญ์ ) * feat/OPS-126 : Member ๋๋ฉ์ธ ์ค๊ณ ์๋ฃ. Service ํ ์คํธ ์ฝ๋ ์ถ๊ฐ * [Chore/OPS-264] ci ์ํฌํ๋ก์ฐ ๊ฐ์ (#10) * chore/OPS-264 : ci.yml ์์ * Update .github/workflows/ci.yml * Update .github/workflows/ci.yml --------- * Update .gitignore to exclude IntelliJ files (#11) Add .idea/ to .gitignore to exclude IntelliJ project files * feat/OPS-134 : ApiV1Controller ์์ฑ ์๋ฃ. (#12) * [chore/OPS-268] CI ์ํฌํ๋ก์ฐ ๊ฐ์ #2 (#15) ํ์ฌ ์์ ๋ก๊ทธ์ธ์ ์ฌ์ฉํ๋ ํน์ ๋ฏผ๊ฐํ ๊ฐ(JWT ํ ํฐ, ์์ client_id ๋ฑ)์ @value ์ด๋ ธํ ์ด์ ์ ํตํด ๋ฐ์์ค๊ณ ์์ต๋๋ค. ํ์ง๋ง ํด๋น ๋ฏผ๊ฐํ ๊ฐ์ ์ ์ฅํ yaml ํ์ผ์ ๋ ํฌ์งํ ๋ฆฌ์ ๋ฐ๋ก ์ฌ๋ฆด ์ ์๊ธฐ์, ๋ ํฌ์งํ ๋ฆฌ์ secrets์ ํด๋น ๊ฐ๋ค์ ์ ์ฅํด๋๊ณ , CI ์ํฌํ๋ก์ฐ์ ์ด ๊ฐ๋ค์ ์ฌ์ฉํด์ application-secrets.yml ํ์ผ์ ์์ฑํ๋ ๋ก์ง์ ์ถ๊ฐํ์ต๋๋ค. * [feat/OPS-155] ์์ ๋ก๊ทธ์ธ ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ(์นด์นด์ค) (#18) * feat/OPS-155 : ์์ ๋ก๊ทธ์ธ/ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ (์นด์นด์ค) ์๋ฃ. ์์ ์ฌํญ ๋ฐ์. * feat/OPS-155 : ์์ ๋ก๊ทธ์ธ/ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ (์นด์นด์ค) ์๋ฃ. ์์ ์ฌํญ ๋ฐ์ #2. * feat/OPS-155 : ์์ ๋ก๊ทธ์ธ/ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ (์นด์นด์ค) ์๋ฃ. ์์ ์ฌํญ ๋ฐ์ #3. * [chore/ops-130] Terraform์ ํ์ฉํด EC2 ์ธ์คํด์ค ์์ฑ ๋ฐ ์ค์ (#17) * chore/OPS-266 : EC2 ์ธ์คํด์ค ์์ฑ * chore/OPS-267 : VPC, IAM, SG ์ค์ * chore : ์๋ธ๋ท ์ค์ ์์ ๋ฐ nginx, mysql ๋ณผ๋ฅจ ๋ง์ดํธ ์ค์ ์ถ๊ฐ * chore : Dockerfile ์์ ๋ฐ EC2 ๋ณด์ ๊ทธ๋ฃน ์์ * chore : MYSQL ์ปจํ ์ด๋ ์คํ์ ์ด๊ธฐ DB ์ด๋ฆ ์ง์ ํ๋๋ก ์ค์ * fix/OPS-271 : SecurityConfig ๋ฐ Jwt ์ธ์ฆ ํํฐ ์์ (#19) * Feat/ops 209 be feat ํด๋ ์์ฑ (#21) * refactor: archive_id + name ๋ณตํฉ ์ ๋ํฌ ์ ์ฝ ์ถ๊ฐ * refactor: folder_id + title ๋ณตํฉ ์ ๋ํฌ ์ ์ฝ ์ถ๊ฐ * refactor: member_id, archive_id ๋จ์ผ ์ ๋ํฌ ์ ์ฝ ์ถ๊ฐ * refactor: ์ํฐํฐ ์ ์ฝ * feat/OPS-209-BE-feat-ํด๋-์์ฑ ์๋ฃ * feat/OPS-209-BE-feat-ํด๋-์์ฑ ์๋ฃ * fix : ์ปจ๋ฒค์ ํต์ผ (#22) * Feat/ops 210 be feat ํด๋ ์ญ์ (#23) * feat/OPS-210 : ํด๋ ์ญ์ ๊ตฌํ * [feat/OPS-151] llm ํ์ฉ ๋ฐ์ดํฐ ์ ์ ํ ๊ธฐ๋ฅ ๊ตฌํ (#27) - groq api๋ฅผ ์ด์ฉํ์ฌ ์์ฝ, ํ๊ทธ ์ถ์ถ ๊ธฐ๋ฅ ๊ตฌํ * [feat/OPS-158] ์์ ๋ก๊ทธ์ธ ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ(๊ตฌ๊ธ) (#28) * feat/OPS-158 : ์์ ๋ก๊ทธ์ธ(๊ตฌ๊ธ) ๊ตฌํ, JWT, Member, Auth ๋๋ฉ์ธ ๊ณ ๋ํ * feat/OPS-158 : ํ ์คํธ ์ผ์ด์ค ์์ . * fix/OPS-158 : template ์ถฉ๋ ํด๊ฒฐ. * fix/OPS-158 : @transactional import ์์ * feat/OPS-211 : ํด๋ ์ด๋ฆ ๋ณ๊ฒฝ ๊ตฌํ (#25) * feat/OPS-211 : ํด๋ ์ด๋ฆ ๋ณ๊ฒฝ ๊ตฌํ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * [chore/OPS-187] Terraform์ ํ์ฉํด RDS ์ธ์คํด์ค ์์ฑ ๋ฐ ์ค์ (#29) * chore/OPS-187 : Terraform์ ํ์ฉํด RDS ์ธ์คํด์ค ์์ฑ ๋ฐ ์ค์น * chore : RDS ์๋ธ๋ท ๊ทธ๋ฃน private์ผ๋ก ์์ * chore : AWS ๋ฆฌ์์ค ๋ค์ด๋ฐ ๊ท์น ์ ์ฉ * [feat] ์คํ์ด์ค ๋ฐ์ดํฐ ๊ด๋ฆฌ (#32) * new/OPS-222 : space controller, sevice, repository ๋น ์์ฑ # Conflicts: # src/main/java/org/tuna/zoopzoop/backend/global/initData/BaseInitData.java * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ์๋ํฌ์ธํธ ์ถ๊ฐ * new/OPS-222 : spaceControllerTest ํ์ผ ์ธํ * refactor/OPS-222 : ํ ์คํธ ํด๋์ค์ ๊ณต์ฉ ํํธ ์ถ์ ํด๋์ค๋ก ๋ถ๋ฆฌ * fix : ์ต์ ์ฌํญ ๋ฐ์ * fix/OPS-222 : ํ ์คํธ ์ฝ๋์์ ํ์ ๋ค๋ฅด๋ ๊ฑฐ ์์ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๊ตฌํ * feat/OPS-222 : space ๋จ์ ํธ๋ค๋ฌ, ์ปค์คํ ์๋ฌ ์์ฑ * fix/OPS-222 : controller ์์ฑ ํ ์คํธ ํต๊ณผ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๋ก์ง ์์ฑ * feat/OPS-222 : ์คํ์ด์ค ์ญ์ ๊ตฌํ * fix/OPS-222 : ํ ์คํธ ์ผ์ด์ค ํต๊ณผ * feat/OPS-245 : controller ๋จ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-245 : ์คํ์ด์ค ๋ช ๋ณ๊ฒฝ ๊ตฌํ * fix/OPS-244 : ์ด๋ฆ ๋ณ๊ฒฝ ์ saveAndFlush๋ก ์ฆ์ ๋ฐ์ * chore/OPS-222 : develop ์ต์ ์ฌํญ ๋ฐ์ * fix : ์ ์ฅ * fix/OPS-222 : globalExceptionHandler ์ปจ๋ฒค์ ํต์ผ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ controller ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-244 : membership ๊ด๋ฆฌ ๋น ์์ฑ * feat/OPS-244 : membership ์์ฑ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ฑ * fix : ํ ์คํธ ์ผ์ด์ค ๊ฐ ์ถฉ๋ ํด๊ฒฐ ์ค * fix : ์ต์ ์ฌํญ ๋ฐ์ * ์์์ ์ฅ * ์ด๊ธฐ ์ํ * fix : ๋ฏธ๋ด์ฑ ์ ์ฉ * feat/OPS-244 : ์คํ์ด์ค ๋ฉค๋ฒ ์ถ๊ฐ ๊ธฐ๋ฅ * fix : spaceControllerTest์ memberControllerTest ๊ฐ ์ถฉ๋ ํด๊ฒฐ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * chore/OPS-244 : ์ธ์ฆ ๊ด๋ จ ์ฝ๋ ์ฃผ์ ์ฒ๋ฆฌ * feat/OPS-270 : ์คํ์ด์ค ๋ก์ง์ ์ฌ์ฉ์ ์ ๋ณด ์ฒดํฌ ์ถ๊ฐ * feat/OPS-22 : ํ ์คํธ ์ผ์ด์ค์ WithUserDetails ๋ฐ์ * feat/OPS-222 : ์ธ์ฆ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * fix : ๋ถํ์ํ ์ฃผ์ ์ญ์ * new/OPS-222 : space controller, sevice, repository ๋น ์์ฑ # Conflicts: # src/main/java/org/tuna/zoopzoop/backend/global/initData/BaseInitData.java * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ์๋ํฌ์ธํธ ์ถ๊ฐ * new/OPS-222 : spaceControllerTest ํ์ผ ์ธํ * refactor/OPS-222 : ํ ์คํธ ํด๋์ค์ ๊ณต์ฉ ํํธ ์ถ์ ํด๋์ค๋ก ๋ถ๋ฆฌ * fix : ์ต์ ์ฌํญ ๋ฐ์ * fix/OPS-222 : ํ ์คํธ ์ฝ๋์์ ํ์ ๋ค๋ฅด๋ ๊ฑฐ ์์ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๊ตฌํ * feat/OPS-222 : space ๋จ์ ํธ๋ค๋ฌ, ์ปค์คํ ์๋ฌ ์์ฑ * fix/OPS-222 : controller ์์ฑ ํ ์คํธ ํต๊ณผ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๋ก์ง ์์ฑ * feat/OPS-222 : ์คํ์ด์ค ์ญ์ ๊ตฌํ * fix/OPS-222 : ํ ์คํธ ์ผ์ด์ค ํต๊ณผ * feat/OPS-245 : controller ๋จ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-245 : ์คํ์ด์ค ๋ช ๋ณ๊ฒฝ ๊ตฌํ * fix/OPS-244 : ์ด๋ฆ ๋ณ๊ฒฝ ์ saveAndFlush๋ก ์ฆ์ ๋ฐ์ * chore/OPS-222 : develop ์ต์ ์ฌํญ ๋ฐ์ * fix : ์ ์ฅ * fix/OPS-222 : globalExceptionHandler ์ปจ๋ฒค์ ํต์ผ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ controller ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-244 : membership ๊ด๋ฆฌ ๋น ์์ฑ * feat/OPS-244 : membership ์์ฑ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ฑ * fix : ํ ์คํธ ์ผ์ด์ค ๊ฐ ์ถฉ๋ ํด๊ฒฐ ์ค * fix : ์ต์ ์ฌํญ ๋ฐ์ * ์์์ ์ฅ * ์ด๊ธฐ ์ํ * fix : ๋ฏธ๋ด์ฑ ์ ์ฉ * feat/OPS-244 : ์คํ์ด์ค ๋ฉค๋ฒ ์ถ๊ฐ ๊ธฐ๋ฅ * fix : spaceControllerTest์ memberControllerTest ๊ฐ ์ถฉ๋ ํด๊ฒฐ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * chore/OPS-244 : ์ธ์ฆ ๊ด๋ จ ์ฝ๋ ์ฃผ์ ์ฒ๋ฆฌ * feat/OPS-270 : ์คํ์ด์ค ๋ก์ง์ ์ฌ์ฉ์ ์ ๋ณด ์ฒดํฌ ์ถ๊ฐ * feat/OPS-22 : ํ ์คํธ ์ผ์ด์ค์ WithUserDetails ๋ฐ์ * feat/OPS-222 : ์ธ์ฆ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * fix : ๋ถํ์ํ ์ฃผ์ ์ญ์ * fix : ๋ถํ์ํ ํ์ผ ์ญ์ --------- * Ops 272 be feat ์๋ฃ ์ด๋ฆ ์กฐํ (#31) * feat/OPS-211 : ํด๋ ์ด๋ฆ ๋ณ๊ฒฝ ๊ตฌํ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * feat/OPS-272 : ํด๋/ํ์ผ ์กฐํ ๊ตฌํ * refactor/OPS-272 : tag ์์ฑ์ ์ถ๊ฐ * feat/OPS-195 : ๋ด์ค ๋ชฉ๋ก ์กฐํ ๊ธฐ๋ฅ ๊ตฌํ(์ต์ ๋ด์ค, ํค์๋ ๊ธฐ๋ฐ). ์๋น์ค ํ ์คํธ ์ถ๊ฐ. (#33) * refactor/OPS-277 : default ํด๋ ์๋ ์์ฑ (#34) * [chore/OPS-278] Auth, Member, News ๋๋ฉ์ธ ๋ฌธ์ํ ๋ฐ ๊ณ ๋ํ. (#35) * chore/OPS-278 : Auth ๋๋ฉ์ธ ๋ฌธ์ํ ์๋ฃ & ApiV1MemberController ์ถ๊ฐ ๊ธฐ๋ฅ ๊ตฌํ. * refactor/OPS-278 : ApiV1MemberController ์ถ๊ฐ ์ฌํญ์ ๋ง๊ฒ ํ ์คํธ ์ถ๊ฐ ๊ตฌํ. * refactor/OPS-278 : Member ์์ฑ ์, ๋๋คํ UUID์ ์ 5๊ธ์๋ฅผ ํ๊ทธ๋ก ์ฌ์ฉํ๋๋ก ๋ณ๊ฒฝ. * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- * refactor/OPS-283 : datasource ์ํฐํฐ ์์ (#39) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * [feat/OPS-175] ์น ํฌ๋กค๋ง ๋ฐ์ดํฐ ์ ์ ํ ๊ธฐ๋ฅ ๊ตฌํ (#41) * feat/OPS-175 : ์น ํฌ๋กค๋ง ๋ฐ์ดํฐ ์ ์ ํ ๊ธฐ๋ฅ ๊ตฌํ * [refactor/OPS-287] News ๋๋ฉ์ธ ๊ณ ๋ํ (#42) * refactor/OPS-287 : newsSearch ๋ฉ์๋ ๋ก์ง ๋ณ๊ฒฝ ๋ฐ ์ผ๋ถ API ๋ฌธ์ํ. * refactor/OPS-287 : NewsServiceTest API๋ฅผ ํธ์ถํ๋ ๋ฐฉ์์ผ๋ก ๋ณ๊ฒฝ. * Ops 226 be feat ์๋ฃ ๋ฑ๋ก (#44) * refactor/OPS-283 : datasource ์ํฐํฐ ์์ * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * feat/OPS-226 : ์๋ฃ ๋ฑ๋ก ๊ตฌํ * refactor/OPS-226 : ๋ฉ์๋ ๋ช ์์ --------- * Ops 215 be feat ์๋ฃ ์ญ์ (#46) * refactor/OPS-283 : datasource ์ํฐํฐ ์์ * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * feat/OPS-226 : ์๋ฃ ๋ฑ๋ก ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ --------- * [feat/OPS-293] LiveBlocks๋ฅผ ์ํ React-flow ๋ฐ์ดํฐ ๊ด๋ฆฌ ๋๋ฉ์ธ ์ค๊ณ ์๋ฃ. ํ ์คํธ ์ถ๊ฐ. (#47) * feat/OPS-293 : LiveBlocks๋ฅผ ์ํ React-flow ๋ฐ์ดํฐ ๊ด๋ฆฌ ๋๋ฉ์ธ ์ค๊ณ ์๋ฃ. ํ ์คํธ ์ถ๊ฐ. * feat/OPS-293 : folder ํ ์คํธ์ @transactional ์ถ๊ฐ. * feat/OPS-293 : MemberServiceTest ์์ #1 * feat/OPS-293 : MemberServiceTest ์์ #2 * feat/OPS-293 : Folder ํ ์คํธ์ ActiveProfile(test) ์ถ๊ฐ. * feat/OPS-293 : ํ ์คํธ์ ๋ฌด๊ฒฐ์ฑ ๊ฒ์ฆ์ ์ํ @afterall, @AfterEach ์ถ๊ฐ. * feat/OPS-293 : ์ผ๋ถ ์์ . * feat/OPS-293 : ์ง์ง ๋ง์ง๋ง ์์ . * [chore/ops-132] CI/CD ํ์ดํ๋ผ์ธ ๊ตฌ์ถ (#43) * chore/OPS-133 : CI ํ์ดํ๋ผ์ธ ๊ตฌ์ถ * chore: ํ ์คํธ/์ด์ ํ๊ฒฝ์ฉ GitHub Actions Terraform ์๋ ์ธํ๋ผ ์ ์ฉ ์ํฌํ๋ก์ฐ ์ถ๊ฐ * chore : ํ๊ฒฝ๋ณ์๋ก test/prod ์๋ฒ ๋ถ๋ฆฌ ๊ฐ๋ฅํ๋๋ก ์ค์ * chore/OPS-135 : CD ์ํฌํ๋ก์ฐ ์ถ๊ฐ * chore: CI ํ CD ์คํ๋๋๋ก ์ค์ * chore : CI ์ํฌํ๋ก์ฐ job ๋ถ๋ฆฌ(ํ ์คํธ,๋น๋/๋์ปค ๋น๋,ghcr push) * chore : docker build jobs์์ checkout ๋จ๊ณ ์ถ๊ฐ * chore: CI ์ํฌํ๋ก์ฐ job ๊ตฌ๋ถ ์์ฐ * chore : develop/main ๋ธ๋์น์ ๋ฐ๋ผ CI/CD ์ํฌํ๋ก์ฐ ๋ถ๋ฆฌ * chore : Spring Boot Acutator ์์กด์ฑ ์ถ๊ฐ * chore: Actions์์ SSH ์ ์ ํ docker ์คํ ๊ถํ ๊ฐ๋๋ก ์ค์ * chore: ์ปจํ ์ด๋ ์คํ ๋ก๊ทธ ํฐ๋ฏธ๋์ ์ถ๋ ฅ ์ค์ * chore : ํฌ์ค์ฒดํฌ ์ค์ * chore: secrets ์ง์ ssh ํ๊ฒฝ ๋ณ์๋ก ์ ๋ฌ * chore: ํ๊ฒฝ๋ณ์ ์ง์ docker run์ ๋ฃ๊ธฐ * chore: spdocker run ์์ ring profile ์ ๊ฑฐ * chore: nginx ์ค์ * chore: test-cd ์์ * chore: test-cd ์์ 2 * chore: ghcr ๋ก๊ทธ์ธ ํ ํฐ ์์ * chore: ๋์ปค ์ด๋ฏธ์ง pull ์ด๋ฆ ์์ * chore: ssh ๋ด ์์ ํ ghcr ๋ก๊ทธ์ธ * chore : ์ด๋ฏธ pullํ ์ด๋ฏธ์ง์ run ์ด๋ฏธ์ง ์ด๋ฆ ์ผ์น์ํค๊ธฐ * chore: mysql driver ์์กด์ฑ ์ถ๊ฐ * chore : ํฌ์ค์ฒดํฌ ์์ฒญ ์คํ๋ง ์ํ๋ฆฌํฐ ํํฐ์ ๊ฑธ๋ฆฌ์ง ์๋๋ก ์ค์ * chore: nginx ํฌํธ ์ค์์นญ ์ค์ * chore: nginx ํฌํธ ์ค์์นญ ์ค์ ์์ * chore: nginx ํฌํธ ์ค์์นญ ์ค์ ์์ 2 * chore: ์ด์์๋ฒ CD ์ํฌํ๋ก์ฐ ์์ * chore : prod-server ์ํฌํ๋ก์ฐ ํ์ฑํ ๊ฒฝ๋ก ์ค์ * chore : test commit ๋์ค์ ์ง์ฐ๊ธฐ * [Feat/OPS-214] ์คํ์ด์ค ๋ฉค๋ฒ ๊ด๋ฆฌ (#50) * feat/OPS-227 : ์คํ์ด์ค ๋ฉค๋ฒ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-227 : ์คํ์ด์ค ๋ชฉ๋ก ๋ฐํ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-251 : ๊ถํ ๋ณ๊ฒฝ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-214 : ๊ถํ ๋ณ๊ฒฝ ์๋ํฌ์ธํธ ๊ตฌํ * fix/OPS-214 : ๋จ์ ๋ฉ์ธ์ง ์ค๋ฅ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-214 : ๋ก์ง ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-251 : globalExceptionHandler์ ์ญ์ง๋ ฌํ ์คํจ ์๋ฌ ์ถ๊ฐ * refactor/OPS-214 : ๋น์ฆ๋์ค ๋ก์ง์ ์๋น์ค ๊ณ์ธต์ ์ผ์ * feat/OPS-231 : ์คํ์ด์ค ์ด๋ ์ปจํธ๋กค๋ฌ ํ ์คํธ์ผ์ด์ค ์์ฑ * feat/OPS-231 : ์คํ์ด์ค ์ด๋ ๋ก์ง ์์ฑ * feat/OPS-231 : ์คํ์ด์ค์ด๋ ์๋น์ค ๋น ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * feat/OPS-228 : ํ์ ํด์ถ ์ปจํธ๋กค๋ฌ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feeat/OPS-229 : ํ์ ํด์ถ ๊ตฌํ ์๋ฃ * fix : ๊ธฐ์กด ํ ์คํธ ์ผ์ด์ค ์ผ๊ด์ฑ ์๊ฒ ์์ * feat : ๋ฉค๋ฒ ํด์ถ ์๋น์ค ํ ์คํธ ์ฝ๋ ์์ฑ * refactor : DTO ํจํค์ง ๋ณ๊ฒฝ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ์ปจํธ๋กค๋ฌ ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ๋ก์ง ์์ฑ * refactor : space ๋๋ฉ์ธ dto ํจํค์ง ๋ณ๊ฒฝ * feat/OPS-227 : ์คํ์ด์ค ๋ฉค๋ฒ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-227 : ์คํ์ด์ค ๋ชฉ๋ก ๋ฐํ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-251 : ๊ถํ ๋ณ๊ฒฝ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-214 : ๊ถํ ๋ณ๊ฒฝ ์๋ํฌ์ธํธ ๊ตฌํ * fix/OPS-214 : ๋จ์ ๋ฉ์ธ์ง ์ค๋ฅ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-214 : ๋ก์ง ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-251 : globalExceptionHandler์ ์ญ์ง๋ ฌํ ์คํจ ์๋ฌ ์ถ๊ฐ * refactor/OPS-214 : ๋น์ฆ๋์ค ๋ก์ง์ ์๋น์ค ๊ณ์ธต์ ์ผ์ * feat/OPS-231 : ์คํ์ด์ค ์ด๋ ์ปจํธ๋กค๋ฌ ํ ์คํธ์ผ์ด์ค ์์ฑ * feat : ์ต์ ์ฌํญ ๋ฐ์ * feat/OPS-231 : ์คํ์ด์ค์ด๋ ์๋น์ค ๋น ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * feat/OPS-228 : ํ์ ํด์ถ ์ปจํธ๋กค๋ฌ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feeat/OPS-229 : ํ์ ํด์ถ ๊ตฌํ ์๋ฃ * fix : ๊ธฐ์กด ํ ์คํธ ์ผ์ด์ค ์ผ๊ด์ฑ ์๊ฒ ์์ * feat : ๋ฉค๋ฒ ํด์ถ ์๋น์ค ํ ์คํธ ์ฝ๋ ์์ฑ * refactor : DTO ํจํค์ง ๋ณ๊ฒฝ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ์ปจํธ๋กค๋ฌ ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ๋ก์ง ์์ฑ * refactor : space ๋๋ฉ์ธ dto ํจํค์ง ๋ณ๊ฒฝ --------- * refactor/OPS-308 : ๋๋ฉ์ธ ๋ถ๋ฆฌ & CI ์ํฌํ๋ก์ฐ์ application-secrets-server.yml ์ถ๊ฐ. (#52) * Ops 255 be feat ์๋ฃ ์์ (#54) * refactor/OPS-283 : datasource ์ํฐํฐ ์์ * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * feat/OPS-226 : ์๋ฃ ๋ฑ๋ก ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-255 : ์๋ฃ ์ด๋ ๋ฐ ์์ ๊ตฌํ --------- * feat/OPS-289 : dataprocessor ์๋น์ค ์์ฑ (#59) * fix/OPS-318 : proxy host ์ค์์นญรฌ๏ฟฝ ssl ์ธ์ฆ์ ์ ์ง (#60) * [refactor/OPS-310] redirect url ๋ณ๊ฒฝ (#53) * refactor/OPS-310 : redirect-url ๋ณ๊ฒฝ. * refactor/OPS-310 : ์์ ์์ . * refactor/OPS-310 : ๋ ํ๋์ ์์ ์์ . * refactor/OPS-310 : ํฐ ์์ . * refactor/OPS-310 : ํ ์คํธ * refactor/OPS-310 : ์์ฒญ ์ฌํญ ๋ฐ์. * refactor/OPS-310 : ์์ฒญ ์ฌํญ ๋ฐ์ #2 * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ (#64) * [refactor/OPS-323] News API ์กฐํ ๋ก์ง ์์ . (#65) * ๋ฐฐํฌ ํ ์คํธ #2 * ๋ก์ง ์์ ํ ์คํธ * ๋ก์ง ์์ ํ ์คํธ #2 * refactor/OPS-322 : source ์นผ๋ผ๋ช ์์ (#68) * refactor/OPS-322 : source ์นผ๋ผ๋ช ์์ * refactor/OPS-322 : source ์นผ๋ผ๋ช ์์ * feat/OPS-321 : dataProcessorService์์ ์์ฝ ๋ก์ง ์์ฑ (#69) * [fix/OPS-317] CI/CD ํ์ดํ๋ผ์ธ ์ด๋ฒคํธ ๋ถ๋ฆฌ (#66) * fix : prod-server nginx ์ ๋ณด ์ถ๋ ฅ ์ ๊ฑฐ * fix : prod-server CD ์ํฌํ๋ก์ฐ main์ push๋ ๋ ์คํ๋๋๋ก ์์ * fix : test-server CI๋ pr์ develop์ ์คํ, CD๋ push๋ ๋ ์คํ * fix : test-server CI ์ํฌํ๋ก์ฐ์์ CD ๋ถ๋ถ ์ ๊ฑฐ * chore : ๋น๋์ aws๊ด๋ จ ์ ๋ณด application-secret.yml์ ๋ค์ด๊ฐ๋๋ก ์ค์ (#73) * chore : S3 ์ฌ์ฉ์ ์ํด ๋น๋์ AWS ์ ๋ณด application-secrets.yml์ ์ถ๊ฐ๋๋๋ก ์ค์ * chore : ์ญํ ์ S3 ์ ๊ทผ ์ ์ฑ ๋ถ์ฐฉ ํ๋๋ก ์ค์ * chore : รฃyml์ ์ถ๊ฐ์ ๋ณด ๋ฃ๋๋ก ์ค์ * [Feat/OPS-275] ์คํ์ด์ค ์ธ๋ค์ผ ์ด๋ฏธ์ง ์ ์ฅ (#71) * chore : S3 ํ๊ฒฝ ์ค์ * feat : S3Service ๊ตฌ์ฑ * chore : multipart ๋ฐ์ดํฐ ํฌ๊ธฐ ์ค์ * feat : S3 ์ ๋ก๋ ํ ์คํธ์ฉ ์๋ํฌ์ธํธ ์์ฑ * feat : S3 ์ฐ๋ ์๋ฃ * feat : space entity์ imageUrl ํญ๋ชฉ ์ถ๊ฐ * feat : ์ธ๋ค์ผ ์บก์ฒ ํ ์คํธ์ฉ * feat : ์ธ๋ค์ผ ์ดฌ์ ํ ์คํธ ์๋ํฌ์ธํธ ์์ฑ * feat : ์คํ์ด์ค ์ธ๋ค์ผ ๊ฐฑ์ API ์์ฑ * feat : ์คํ์ด์ค ์ด๋ฏธ์ง ๊ฐฑ์ ๊ธฐ๋ฅ ์์ฑ * feat : ์คํ์ด์ค ๋ชฉ๋ก ๋ฐํ ์ ์ธ๋ค์ผ url ๊ฐ์ด ๋ฐํ * feat : ์คํ์ด์ค ๋จ๊ฑด ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat : ์คํ์ด์ค ๋จ๊ฑด ์กฐํ ๊ตฌํ * feat : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ํ์ด์ง ๊ธฐ๋ฅ ์ถ๊ฐ --------- * [feat/OPS-324] ํฌ๋กฌ ํ์ฅ ํ๋ก๊ทธ๋จ ์์ ๋ก๊ทธ์ธ ๋ถ๊ธฐ & ์์ ๋ก๊ทธ์ธ ํ ์คํธ API ์ถ๊ฐ. (#70) * feat/OPS-324 : ํ์ฅ ํ๋ก๊ทธ๋จ ๋ถ๊ธฐ ๋ฐ ์์ ๋ก๊ทธ์ธ ํ ์คํธ API ์ถ๊ฐ. * feat/OPS-324 : ํ ์คํธ ๋ก์ง ์ผ๋ถ ์์ . * feat/OPS-324 : ํ ์คํธ ๋ก์ง ์ผ๋ถ ์์ . #2 * feat/OPS-324 : ํ ์คํธ ์๋ฃ, ํ ์คํธ ์ฝ๋ ์ ๊ฑฐ. * feat/OPS-324 : ๋ก๊ทธ์ธ ๋ถ๊ธฐ ์์ . * feat/OPS-324 : state ์ ๋ณด๋ฅผ ์ ์ฅํ๋ resolver ์ถ๊ฐ. * feat/OPS-324 : session ๋ฑ๋ก์ ์ํ OAuth2LoginSourceFilter ํด๋์ค ์ถ๊ฐ. * feat/OPS-324 : ํด๊ฒฐ * fix : ci ์ secrets ์์ S3 ๊ด๋ จ ์ํฌ๋ฆฟ ๊ฐ ์ญ์ ํ๋๋ก ๋ณ๊ฒฝ(๋ฒํท๋ช ์ ์ธ) (#74) * fix : ci ์ secrets ์์ S3 ๊ด๋ จ ์ํฌ๋ฆฟ ๊ฐ ์ญ์ ํ๋๋ก ๋ณ๊ฒฝ(๋ฒํท๋ช ์ ์ธ) * fix : CI ์คํ ์์ * fix : build ๋จ๊ณ์์ testest๋ฅผ ์ํํ์ง ์๋๋ก ๋ณ๊ฒฝ --------- * [feat/OPS-198] ์์นด์ด๋ธ ์ ๋ณด๋ก ๋ด์ค ๋ชฉ๋ก ์กฐํ (#75) * feat/OPS-198 : ์์นด์ด๋ธ ๊ธฐ๋ฐ ๋ด์ค ์กฐํ ๊ตฌํ. * feat/OPS-198 : ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ. * feat/OPS-265 : LLM-ํ์ฉ-๋ฐ์ดํฐ-์ ์ ํ-์-๊ธฐ์กด-์์นด์ด๋ธ์-ํ๊ทธ-์ฐ๋ (#77) * refactor/OPS-319: ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ (#76) * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * fix : SpringDoc๊ณผ Spring AI ๊ฐ ์์กด์ฑ ์ถฉ๋ ํด๊ฒฐ (#79) * [Feat/OPS-327] ์๋ฃ ๋ฑ๋ก llm ์ฐ๋ (#78) * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-327 : ์๋ฃ ๋ฑ๋ก LLM ์ฐ๋ * [feat/OPS-328] ์ธ์ฆ/์ธ๊ฐ ๋ก์ง ๋ณ๊ฒฝ (#80) * feat/OPS-328 : RefreshToken์ ์๋ฒ์์ ์ ์ฅํ๋๋ก ๋ณ๊ฒฝ. API ์ผ๋ถ ์์ . * feat/OPS-328 : ํ์ฅ ํ๋ก๊ทธ๋จ ๋ก๊ทธ์ธ ๋ฉ์๋ ์ถ๊ฐ ๋ฐ ๋ฐ์ดํฐ ์บ์ฑ ๋ฉ์๋ ์ถ๊ฐ. * [refactor/OPS-337] ์๊ตฌ์ฌํญ ๋ฐ์ ๋ฐ ์ผ๋ถ ๋ก์ง ์์ . (#81) * refactor/OPS-337 : ํ๋ก ํธ ์๊ตฌ์ฌํญ ๋ฐ์ ๋ฐ ์๋ฌ ์์ . * refactor/OPS-337 : ํ ์คํธ ์ผ์ด์ค ์์ . * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ (#82) * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : mock ์ถ๊ฐ๋ก ์ธํ testcase ์์ * [feat/OPS-338] ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ (#83) * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : mock ์ถ๊ฐ๋ก ์ธํ testcase ์์ * refactor/OPS-338 : Dev ํ ํฐ ๋ฐ๊ธ ์ปจํธ๋กค๋ฌ ์ถ๊ฐ * [Feat/OPS-326] ๋์๋ณด๋ ๋ฐ์ดํฐ ์ ์ฅ ์ฒด๊ณ ๊ตฌ์ถ (#85) * refactor : graph ๋๋ฉ์ธ์ dashboard ๋๋ฉ์ธ์ผ๋ก ์์ , dashboard ์ํฐํฐ ์์ฑ * feat : ์คํ์ด์ค ๋จ๊ฑด ์กฐํ ์ ๋์๋ณด๋ id๋ ํจ๊ป ๋ฐํ * refactor : API ๋ช ๋ณ๊ฒฝ * dashboard ๊ธฐ๋ฐ์ผ๋ก ์ ์ฅ/์กฐํ ๋๋๋ก ๋ณ๊ฒฝ * refactor : ํ ์คํธ ์ฝ๋ ์์ * fix : ๋ฐํ ๋ฉ์ธ์ง ์์ * feat : ์๋ช ๊ฒ์ฆ ๋ก์ง ๊ตฌํ * refactor : signature ์๋น์ค ๋ถ๋ฆฌ * fix : ์คํ ์์ * fix : CI ํ์ดํ๋ผ์ธ ์์ --------- * [feat/OPS-329] Sentry๋ฅผ ํตํ ๋ชจ๋ํฐ๋ง ํ๊ฒฝ ๊ตฌ์ถ. (#86) * feat/OPS-329 : Sentry๋ฅผ ํตํ ๋ชจ๋ํฐ๋ง ํ๊ฒฝ ๊ตฌ์ถ. * feat/OPS-329: ์ถ๊ฐ๋ก ํ๋ก ํธ ์๊ตฌ ์ฌํญ ๋ฐ์. * refactor/OPS-353 : ๋ถ๋ฆฌ ์๋ฃ. (#87) * [refactor/OPS-354] ํ ์คํธ ์ผ์ด์ค ์ฌ์ฉ ํ๋กํ ๋ณ๊ฒฝ. (#88) * refactor/OPS-354 : ํ ์คํธ ์ผ์ด์ค ์ฌ์ฉ ํ๋กํ ๋ณ๊ฒฝ. * refactor/OPS-354 : ์ด๋๋ ์๋ผ? * refactor/OPS-355 : ์๊ตฌ ์ฌํญ ๋ฐ์. (#91) * feat/OPS-358: Redis ์์กด์ฑ ์ถ๊ฐ ๋ฐ RedisConfig ์ค์ ์๋ฃ. AuthResultData ์ง๋ ฌํ ๋ฐ AuthResult ํด๋์ค์ TTL ๋์ . (#92) * feat/OPS-356 : ๋ค์ด๋ฒ ๋ธ๋ก๊ทธ ํฌ๋กค๋ฌ ์์ฑ (#93) * [feat/OPS-252] ์กฐ๊ฑด๋ณ ์๋ฃ ๊ฒ์ (#89) * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-327 : ์๋ฃ ๋ฑ๋ก LLM ์ฐ๋ * refactor/OPS-252 : ์กฐ๊ฑด๋ณ ์๋ฃ ๊ฒ์ ๊ตฌํ * refactor/OPS-252 : ์กฐ๊ฑด๋ณ ์๋ฃ ๊ฒ์ * fix : ์คํ์ด์ค, ์ฌ์ฉ์ ๋ชฉ๋ก ๋ฐํ ์ ํญ์ id ์ค๋ฆ์ฐจ์ ์ ๋ ฌ (#94) * IllegalStateException(๋์์ฑ ๋ฌธ์ )๊ด๋ จ ์ฒ๋ฆฌ ๋ฉ์๋ ์ถ๊ฐ. (#95) * [fix/OPS-362] ์๊ตฌ ์ฌํญ ๋ฐ์ (#96) * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์. * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#2 * [feat/OPS-341] ๋ฒจโฆ
Kimgooner
added a commit
that referenced
this pull request
Oct 17, 2025
* [feat/OPS-262] GlobalExceptionHandler ์ค์ (#8) * feat: GlobalExceptionHandler ์งํ ์ฌํญ ์ ์ฅ. * feat/OPS-262 : GlobalExceptionHandler ์์ฑ ์๋ฃ. * [feat/OPS-126] Member ๋๋ฉ์ธ ๊ธฐ์ด ์ค๊ณ (#9) * feat/OPS-127 : Member ์ํฐํฐ ์์ฑ(ํ๋, ์ฐ๊ด ๊ด๊ณ, ์์ฑ์, ๋ฉ์๋) * feat/OPS-128 : MemberRepository ์์ฑ(name, email ๊ฒ์ ์ต์ ์ถ๊ฐ) * feat: GlobalExceptionHandler ์์ฑ์ ์ํ ์งํ ์ฌํญ ์ ์ฅ. * feat/OPS-129 : MemberService ์์ฑ(์กฐํ, ์์ฑ/์์ , ์ญ์ ) * feat/OPS-126 : Member ๋๋ฉ์ธ ์ค๊ณ ์๋ฃ. Service ํ ์คํธ ์ฝ๋ ์ถ๊ฐ * [Chore/OPS-264] ci ์ํฌํ๋ก์ฐ ๊ฐ์ (#10) * chore/OPS-264 : ci.yml ์์ * Update .github/workflows/ci.yml Co-authored-by: Copilot <[email protected]> * Update .github/workflows/ci.yml Co-authored-by: Copilot <[email protected]> --------- Co-authored-by: Copilot <[email protected]> * Update .gitignore to exclude IntelliJ files (#11) Add .idea/ to .gitignore to exclude IntelliJ project files * feat/OPS-134 : ApiV1Controller ์์ฑ ์๋ฃ. (#12) * [chore/OPS-268] CI ์ํฌํ๋ก์ฐ ๊ฐ์ #2 (#15) ํ์ฌ ์์ ๋ก๊ทธ์ธ์ ์ฌ์ฉํ๋ ํน์ ๋ฏผ๊ฐํ ๊ฐ(JWT ํ ํฐ, ์์ client_id ๋ฑ)์ @value ์ด๋ ธํ ์ด์ ์ ํตํด ๋ฐ์์ค๊ณ ์์ต๋๋ค. ํ์ง๋ง ํด๋น ๋ฏผ๊ฐํ ๊ฐ์ ์ ์ฅํ yaml ํ์ผ์ ๋ ํฌ์งํ ๋ฆฌ์ ๋ฐ๋ก ์ฌ๋ฆด ์ ์๊ธฐ์, ๋ ํฌ์งํ ๋ฆฌ์ secrets์ ํด๋น ๊ฐ๋ค์ ์ ์ฅํด๋๊ณ , CI ์ํฌํ๋ก์ฐ์ ์ด ๊ฐ๋ค์ ์ฌ์ฉํด์ application-secrets.yml ํ์ผ์ ์์ฑํ๋ ๋ก์ง์ ์ถ๊ฐํ์ต๋๋ค. * [feat/OPS-155] ์์ ๋ก๊ทธ์ธ ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ(์นด์นด์ค) (#18) * feat/OPS-155 : ์์ ๋ก๊ทธ์ธ/ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ (์นด์นด์ค) ์๋ฃ. ์์ ์ฌํญ ๋ฐ์. * feat/OPS-155 : ์์ ๋ก๊ทธ์ธ/ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ (์นด์นด์ค) ์๋ฃ. ์์ ์ฌํญ ๋ฐ์ #2. * feat/OPS-155 : ์์ ๋ก๊ทธ์ธ/ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ (์นด์นด์ค) ์๋ฃ. ์์ ์ฌํญ ๋ฐ์ #3. * [chore/ops-130] Terraform์ ํ์ฉํด EC2 ์ธ์คํด์ค ์์ฑ ๋ฐ ์ค์ (#17) * chore/OPS-266 : EC2 ์ธ์คํด์ค ์์ฑ * chore/OPS-267 : VPC, IAM, SG ์ค์ * chore : ์๋ธ๋ท ์ค์ ์์ ๋ฐ nginx, mysql ๋ณผ๋ฅจ ๋ง์ดํธ ์ค์ ์ถ๊ฐ * chore : Dockerfile ์์ ๋ฐ EC2 ๋ณด์ ๊ทธ๋ฃน ์์ * chore : MYSQL ์ปจํ ์ด๋ ์คํ์ ์ด๊ธฐ DB ์ด๋ฆ ์ง์ ํ๋๋ก ์ค์ * fix/OPS-271 : SecurityConfig ๋ฐ Jwt ์ธ์ฆ ํํฐ ์์ (#19) * Feat/ops 209 be feat ํด๋ ์์ฑ (#21) * refactor: archive_id + name ๋ณตํฉ ์ ๋ํฌ ์ ์ฝ ์ถ๊ฐ * refactor: folder_id + title ๋ณตํฉ ์ ๋ํฌ ์ ์ฝ ์ถ๊ฐ * refactor: member_id, archive_id ๋จ์ผ ์ ๋ํฌ ์ ์ฝ ์ถ๊ฐ * refactor: ์ํฐํฐ ์ ์ฝ * feat/OPS-209-BE-feat-ํด๋-์์ฑ ์๋ฃ * feat/OPS-209-BE-feat-ํด๋-์์ฑ ์๋ฃ * fix : ์ปจ๋ฒค์ ํต์ผ (#22) Co-authored-by: EpicFn <[email protected]> * Feat/ops 210 be feat ํด๋ ์ญ์ (#23) * feat/OPS-210 : ํด๋ ์ญ์ ๊ตฌํ * [feat/OPS-151] llm ํ์ฉ ๋ฐ์ดํฐ ์ ์ ํ ๊ธฐ๋ฅ ๊ตฌํ (#27) - groq api๋ฅผ ์ด์ฉํ์ฌ ์์ฝ, ํ๊ทธ ์ถ์ถ ๊ธฐ๋ฅ ๊ตฌํ * [feat/OPS-158] ์์ ๋ก๊ทธ์ธ ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ(๊ตฌ๊ธ) (#28) * feat/OPS-158 : ์์ ๋ก๊ทธ์ธ(๊ตฌ๊ธ) ๊ตฌํ, JWT, Member, Auth ๋๋ฉ์ธ ๊ณ ๋ํ * feat/OPS-158 : ํ ์คํธ ์ผ์ด์ค ์์ . * fix/OPS-158 : template ์ถฉ๋ ํด๊ฒฐ. * fix/OPS-158 : @transactional import ์์ * feat/OPS-211 : ํด๋ ์ด๋ฆ ๋ณ๊ฒฝ ๊ตฌํ (#25) * feat/OPS-211 : ํด๋ ์ด๋ฆ ๋ณ๊ฒฝ ๊ตฌํ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * [chore/OPS-187] Terraform์ ํ์ฉํด RDS ์ธ์คํด์ค ์์ฑ ๋ฐ ์ค์ (#29) * chore/OPS-187 : Terraform์ ํ์ฉํด RDS ์ธ์คํด์ค ์์ฑ ๋ฐ ์ค์น * chore : RDS ์๋ธ๋ท ๊ทธ๋ฃน private์ผ๋ก ์์ * chore : AWS ๋ฆฌ์์ค ๋ค์ด๋ฐ ๊ท์น ์ ์ฉ * [feat] ์คํ์ด์ค ๋ฐ์ดํฐ ๊ด๋ฆฌ (#32) * new/OPS-222 : space controller, sevice, repository ๋น ์์ฑ # Conflicts: # src/main/java/org/tuna/zoopzoop/backend/global/initData/BaseInitData.java * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ์๋ํฌ์ธํธ ์ถ๊ฐ * new/OPS-222 : spaceControllerTest ํ์ผ ์ธํ * refactor/OPS-222 : ํ ์คํธ ํด๋์ค์ ๊ณต์ฉ ํํธ ์ถ์ ํด๋์ค๋ก ๋ถ๋ฆฌ * fix : ์ต์ ์ฌํญ ๋ฐ์ * fix/OPS-222 : ํ ์คํธ ์ฝ๋์์ ํ์ ๋ค๋ฅด๋ ๊ฑฐ ์์ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๊ตฌํ * feat/OPS-222 : space ๋จ์ ํธ๋ค๋ฌ, ์ปค์คํ ์๋ฌ ์์ฑ * fix/OPS-222 : controller ์์ฑ ํ ์คํธ ํต๊ณผ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๋ก์ง ์์ฑ * feat/OPS-222 : ์คํ์ด์ค ์ญ์ ๊ตฌํ * fix/OPS-222 : ํ ์คํธ ์ผ์ด์ค ํต๊ณผ * feat/OPS-245 : controller ๋จ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-245 : ์คํ์ด์ค ๋ช ๋ณ๊ฒฝ ๊ตฌํ * fix/OPS-244 : ์ด๋ฆ ๋ณ๊ฒฝ ์ saveAndFlush๋ก ์ฆ์ ๋ฐ์ * chore/OPS-222 : develop ์ต์ ์ฌํญ ๋ฐ์ * fix : ์ ์ฅ * fix/OPS-222 : globalExceptionHandler ์ปจ๋ฒค์ ํต์ผ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ controller ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-244 : membership ๊ด๋ฆฌ ๋น ์์ฑ * feat/OPS-244 : membership ์์ฑ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ฑ * fix : ํ ์คํธ ์ผ์ด์ค ๊ฐ ์ถฉ๋ ํด๊ฒฐ ์ค * fix : ์ต์ ์ฌํญ ๋ฐ์ * ์์์ ์ฅ * ์ด๊ธฐ ์ํ * fix : ๋ฏธ๋ด์ฑ ์ ์ฉ * feat/OPS-244 : ์คํ์ด์ค ๋ฉค๋ฒ ์ถ๊ฐ ๊ธฐ๋ฅ * fix : spaceControllerTest์ memberControllerTest ๊ฐ ์ถฉ๋ ํด๊ฒฐ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * chore/OPS-244 : ์ธ์ฆ ๊ด๋ จ ์ฝ๋ ์ฃผ์ ์ฒ๋ฆฌ * feat/OPS-270 : ์คํ์ด์ค ๋ก์ง์ ์ฌ์ฉ์ ์ ๋ณด ์ฒดํฌ ์ถ๊ฐ * feat/OPS-22 : ํ ์คํธ ์ผ์ด์ค์ WithUserDetails ๋ฐ์ * feat/OPS-222 : ์ธ์ฆ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * fix : ๋ถํ์ํ ์ฃผ์ ์ญ์ * new/OPS-222 : space controller, sevice, repository ๋น ์์ฑ # Conflicts: # src/main/java/org/tuna/zoopzoop/backend/global/initData/BaseInitData.java * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ์๋ํฌ์ธํธ ์ถ๊ฐ * new/OPS-222 : spaceControllerTest ํ์ผ ์ธํ * refactor/OPS-222 : ํ ์คํธ ํด๋์ค์ ๊ณต์ฉ ํํธ ์ถ์ ํด๋์ค๋ก ๋ถ๋ฆฌ * fix : ์ต์ ์ฌํญ ๋ฐ์ * fix/OPS-222 : ํ ์คํธ ์ฝ๋์์ ํ์ ๋ค๋ฅด๋ ๊ฑฐ ์์ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๊ตฌํ * feat/OPS-222 : space ๋จ์ ํธ๋ค๋ฌ, ์ปค์คํ ์๋ฌ ์์ฑ * fix/OPS-222 : controller ์์ฑ ํ ์คํธ ํต๊ณผ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๋ก์ง ์์ฑ * feat/OPS-222 : ์คํ์ด์ค ์ญ์ ๊ตฌํ * fix/OPS-222 : ํ ์คํธ ์ผ์ด์ค ํต๊ณผ * feat/OPS-245 : controller ๋จ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-245 : ์คํ์ด์ค ๋ช ๋ณ๊ฒฝ ๊ตฌํ * fix/OPS-244 : ์ด๋ฆ ๋ณ๊ฒฝ ์ saveAndFlush๋ก ์ฆ์ ๋ฐ์ * chore/OPS-222 : develop ์ต์ ์ฌํญ ๋ฐ์ * fix : ์ ์ฅ * fix/OPS-222 : globalExceptionHandler ์ปจ๋ฒค์ ํต์ผ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ controller ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-244 : membership ๊ด๋ฆฌ ๋น ์์ฑ * feat/OPS-244 : membership ์์ฑ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ฑ * fix : ํ ์คํธ ์ผ์ด์ค ๊ฐ ์ถฉ๋ ํด๊ฒฐ ์ค * fix : ์ต์ ์ฌํญ ๋ฐ์ * ์์์ ์ฅ * ์ด๊ธฐ ์ํ * fix : ๋ฏธ๋ด์ฑ ์ ์ฉ * feat/OPS-244 : ์คํ์ด์ค ๋ฉค๋ฒ ์ถ๊ฐ ๊ธฐ๋ฅ * fix : spaceControllerTest์ memberControllerTest ๊ฐ ์ถฉ๋ ํด๊ฒฐ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * chore/OPS-244 : ์ธ์ฆ ๊ด๋ จ ์ฝ๋ ์ฃผ์ ์ฒ๋ฆฌ * feat/OPS-270 : ์คํ์ด์ค ๋ก์ง์ ์ฌ์ฉ์ ์ ๋ณด ์ฒดํฌ ์ถ๊ฐ * feat/OPS-22 : ํ ์คํธ ์ผ์ด์ค์ WithUserDetails ๋ฐ์ * feat/OPS-222 : ์ธ์ฆ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * fix : ๋ถํ์ํ ์ฃผ์ ์ญ์ * fix : ๋ถํ์ํ ํ์ผ ์ญ์ --------- Co-authored-by: EpicFn <[email protected]> * Ops 272 be feat ์๋ฃ ์ด๋ฆ ์กฐํ (#31) * feat/OPS-211 : ํด๋ ์ด๋ฆ ๋ณ๊ฒฝ ๊ตฌํ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * feat/OPS-272 : ํด๋/ํ์ผ ์กฐํ ๊ตฌํ * refactor/OPS-272 : tag ์์ฑ์ ์ถ๊ฐ * feat/OPS-195 : ๋ด์ค ๋ชฉ๋ก ์กฐํ ๊ธฐ๋ฅ ๊ตฌํ(์ต์ ๋ด์ค, ํค์๋ ๊ธฐ๋ฐ). ์๋น์ค ํ ์คํธ ์ถ๊ฐ. (#33) * refactor/OPS-277 : default ํด๋ ์๋ ์์ฑ (#34) * [chore/OPS-278] Auth, Member, News ๋๋ฉ์ธ ๋ฌธ์ํ ๋ฐ ๊ณ ๋ํ. (#35) * chore/OPS-278 : Auth ๋๋ฉ์ธ ๋ฌธ์ํ ์๋ฃ & ApiV1MemberController ์ถ๊ฐ ๊ธฐ๋ฅ ๊ตฌํ. * refactor/OPS-278 : ApiV1MemberController ์ถ๊ฐ ์ฌํญ์ ๋ง๊ฒ ํ ์คํธ ์ถ๊ฐ ๊ตฌํ. * refactor/OPS-278 : Member ์์ฑ ์, ๋๋คํ UUID์ ์ 5๊ธ์๋ฅผ ํ๊ทธ๋ก ์ฌ์ฉํ๋๋ก ๋ณ๊ฒฝ. * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- Co-authored-by: EpicFn <[email protected]> * refactor/OPS-283 : datasource ์ํฐํฐ ์์ (#39) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * [feat/OPS-175] ์น ํฌ๋กค๋ง ๋ฐ์ดํฐ ์ ์ ํ ๊ธฐ๋ฅ ๊ตฌํ (#41) * feat/OPS-175 : ์น ํฌ๋กค๋ง ๋ฐ์ดํฐ ์ ์ ํ ๊ธฐ๋ฅ ๊ตฌํ * [refactor/OPS-287] News ๋๋ฉ์ธ ๊ณ ๋ํ (#42) * refactor/OPS-287 : newsSearch ๋ฉ์๋ ๋ก์ง ๋ณ๊ฒฝ ๋ฐ ์ผ๋ถ API ๋ฌธ์ํ. * refactor/OPS-287 : NewsServiceTest API๋ฅผ ํธ์ถํ๋ ๋ฐฉ์์ผ๋ก ๋ณ๊ฒฝ. * Ops 226 be feat ์๋ฃ ๋ฑ๋ก (#44) * refactor/OPS-283 : datasource ์ํฐํฐ ์์ * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- Co-authored-by: EpicFn <[email protected]> * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * feat/OPS-226 : ์๋ฃ ๋ฑ๋ก ๊ตฌํ * refactor/OPS-226 : ๋ฉ์๋ ๋ช ์์ --------- Co-authored-by: Hyeok Jin Kim <[email protected]> Co-authored-by: EpicFn <[email protected]> * Ops 215 be feat ์๋ฃ ์ญ์ (#46) * refactor/OPS-283 : datasource ์ํฐํฐ ์์ * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- Co-authored-by: EpicFn <[email protected]> * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * feat/OPS-226 : ์๋ฃ ๋ฑ๋ก ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ --------- Co-authored-by: Hyeok Jin Kim <[email protected]> Co-authored-by: EpicFn <[email protected]> * [feat/OPS-293] LiveBlocks๋ฅผ ์ํ React-flow ๋ฐ์ดํฐ ๊ด๋ฆฌ ๋๋ฉ์ธ ์ค๊ณ ์๋ฃ. ํ ์คํธ ์ถ๊ฐ. (#47) * feat/OPS-293 : LiveBlocks๋ฅผ ์ํ React-flow ๋ฐ์ดํฐ ๊ด๋ฆฌ ๋๋ฉ์ธ ์ค๊ณ ์๋ฃ. ํ ์คํธ ์ถ๊ฐ. * feat/OPS-293 : folder ํ ์คํธ์ @transactional ์ถ๊ฐ. * feat/OPS-293 : MemberServiceTest ์์ #1 * feat/OPS-293 : MemberServiceTest ์์ #2 * feat/OPS-293 : Folder ํ ์คํธ์ ActiveProfile(test) ์ถ๊ฐ. * feat/OPS-293 : ํ ์คํธ์ ๋ฌด๊ฒฐ์ฑ ๊ฒ์ฆ์ ์ํ @afterall, @AfterEach ์ถ๊ฐ. * feat/OPS-293 : ์ผ๋ถ ์์ . * feat/OPS-293 : ์ง์ง ๋ง์ง๋ง ์์ . * [chore/ops-132] CI/CD ํ์ดํ๋ผ์ธ ๊ตฌ์ถ (#43) * chore/OPS-133 : CI ํ์ดํ๋ผ์ธ ๊ตฌ์ถ * chore: ํ ์คํธ/์ด์ ํ๊ฒฝ์ฉ GitHub Actions Terraform ์๋ ์ธํ๋ผ ์ ์ฉ ์ํฌํ๋ก์ฐ ์ถ๊ฐ * chore : ํ๊ฒฝ๋ณ์๋ก test/prod ์๋ฒ ๋ถ๋ฆฌ ๊ฐ๋ฅํ๋๋ก ์ค์ * chore/OPS-135 : CD ์ํฌํ๋ก์ฐ ์ถ๊ฐ * chore: CI ํ CD ์คํ๋๋๋ก ์ค์ * chore : CI ์ํฌํ๋ก์ฐ job ๋ถ๋ฆฌ(ํ ์คํธ,๋น๋/๋์ปค ๋น๋,ghcr push) * chore : docker build jobs์์ checkout ๋จ๊ณ ์ถ๊ฐ * chore: CI ์ํฌํ๋ก์ฐ job ๊ตฌ๋ถ ์์ฐ * chore : develop/main ๋ธ๋์น์ ๋ฐ๋ผ CI/CD ์ํฌํ๋ก์ฐ ๋ถ๋ฆฌ * chore : Spring Boot Acutator ์์กด์ฑ ์ถ๊ฐ * chore: Actions์์ SSH ์ ์ ํ docker ์คํ ๊ถํ ๊ฐ๋๋ก ์ค์ * chore: ์ปจํ ์ด๋ ์คํ ๋ก๊ทธ ํฐ๋ฏธ๋์ ์ถ๋ ฅ ์ค์ * chore : ํฌ์ค์ฒดํฌ ์ค์ * chore: secrets ์ง์ ssh ํ๊ฒฝ ๋ณ์๋ก ์ ๋ฌ * chore: ํ๊ฒฝ๋ณ์ ์ง์ docker run์ ๋ฃ๊ธฐ * chore: spdocker run ์์ ring profile ์ ๊ฑฐ * chore: nginx ์ค์ * chore: test-cd ์์ * chore: test-cd ์์ 2 * chore: ghcr ๋ก๊ทธ์ธ ํ ํฐ ์์ * chore: ๋์ปค ์ด๋ฏธ์ง pull ์ด๋ฆ ์์ * chore: ssh ๋ด ์์ ํ ghcr ๋ก๊ทธ์ธ * chore : ์ด๋ฏธ pullํ ์ด๋ฏธ์ง์ run ์ด๋ฏธ์ง ์ด๋ฆ ์ผ์น์ํค๊ธฐ * chore: mysql driver ์์กด์ฑ ์ถ๊ฐ * chore : ํฌ์ค์ฒดํฌ ์์ฒญ ์คํ๋ง ์ํ๋ฆฌํฐ ํํฐ์ ๊ฑธ๋ฆฌ์ง ์๋๋ก ์ค์ * chore: nginx ํฌํธ ์ค์์นญ ์ค์ * chore: nginx ํฌํธ ์ค์์นญ ์ค์ ์์ * chore: nginx ํฌํธ ์ค์์นญ ์ค์ ์์ 2 * chore: ์ด์์๋ฒ CD ์ํฌํ๋ก์ฐ ์์ * chore : prod-server ์ํฌํ๋ก์ฐ ํ์ฑํ ๊ฒฝ๋ก ์ค์ * chore : test commit ๋์ค์ ์ง์ฐ๊ธฐ * [Feat/OPS-214] ์คํ์ด์ค ๋ฉค๋ฒ ๊ด๋ฆฌ (#50) * feat/OPS-227 : ์คํ์ด์ค ๋ฉค๋ฒ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-227 : ์คํ์ด์ค ๋ชฉ๋ก ๋ฐํ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-251 : ๊ถํ ๋ณ๊ฒฝ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-214 : ๊ถํ ๋ณ๊ฒฝ ์๋ํฌ์ธํธ ๊ตฌํ * fix/OPS-214 : ๋จ์ ๋ฉ์ธ์ง ์ค๋ฅ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-214 : ๋ก์ง ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-251 : globalExceptionHandler์ ์ญ์ง๋ ฌํ ์คํจ ์๋ฌ ์ถ๊ฐ * refactor/OPS-214 : ๋น์ฆ๋์ค ๋ก์ง์ ์๋น์ค ๊ณ์ธต์ ์ผ์ * feat/OPS-231 : ์คํ์ด์ค ์ด๋ ์ปจํธ๋กค๋ฌ ํ ์คํธ์ผ์ด์ค ์์ฑ * feat/OPS-231 : ์คํ์ด์ค ์ด๋ ๋ก์ง ์์ฑ * feat/OPS-231 : ์คํ์ด์ค์ด๋ ์๋น์ค ๋น ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * feat/OPS-228 : ํ์ ํด์ถ ์ปจํธ๋กค๋ฌ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feeat/OPS-229 : ํ์ ํด์ถ ๊ตฌํ ์๋ฃ * fix : ๊ธฐ์กด ํ ์คํธ ์ผ์ด์ค ์ผ๊ด์ฑ ์๊ฒ ์์ * feat : ๋ฉค๋ฒ ํด์ถ ์๋น์ค ํ ์คํธ ์ฝ๋ ์์ฑ * refactor : DTO ํจํค์ง ๋ณ๊ฒฝ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ์ปจํธ๋กค๋ฌ ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ๋ก์ง ์์ฑ * refactor : space ๋๋ฉ์ธ dto ํจํค์ง ๋ณ๊ฒฝ * feat/OPS-227 : ์คํ์ด์ค ๋ฉค๋ฒ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-227 : ์คํ์ด์ค ๋ชฉ๋ก ๋ฐํ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-251 : ๊ถํ ๋ณ๊ฒฝ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-214 : ๊ถํ ๋ณ๊ฒฝ ์๋ํฌ์ธํธ ๊ตฌํ * fix/OPS-214 : ๋จ์ ๋ฉ์ธ์ง ์ค๋ฅ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-214 : ๋ก์ง ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-251 : globalExceptionHandler์ ์ญ์ง๋ ฌํ ์คํจ ์๋ฌ ์ถ๊ฐ * refactor/OPS-214 : ๋น์ฆ๋์ค ๋ก์ง์ ์๋น์ค ๊ณ์ธต์ ์ผ์ * feat/OPS-231 : ์คํ์ด์ค ์ด๋ ์ปจํธ๋กค๋ฌ ํ ์คํธ์ผ์ด์ค ์์ฑ * feat : ์ต์ ์ฌํญ ๋ฐ์ * feat/OPS-231 : ์คํ์ด์ค์ด๋ ์๋น์ค ๋น ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * feat/OPS-228 : ํ์ ํด์ถ ์ปจํธ๋กค๋ฌ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feeat/OPS-229 : ํ์ ํด์ถ ๊ตฌํ ์๋ฃ * fix : ๊ธฐ์กด ํ ์คํธ ์ผ์ด์ค ์ผ๊ด์ฑ ์๊ฒ ์์ * feat : ๋ฉค๋ฒ ํด์ถ ์๋น์ค ํ ์คํธ ์ฝ๋ ์์ฑ * refactor : DTO ํจํค์ง ๋ณ๊ฒฝ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ์ปจํธ๋กค๋ฌ ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ๋ก์ง ์์ฑ * refactor : space ๋๋ฉ์ธ dto ํจํค์ง ๋ณ๊ฒฝ --------- Co-authored-by: EpicFn <[email protected]> * refactor/OPS-308 : ๋๋ฉ์ธ ๋ถ๋ฆฌ & CI ์ํฌํ๋ก์ฐ์ application-secrets-server.yml ์ถ๊ฐ. (#52) * Ops 255 be feat ์๋ฃ ์์ (#54) * refactor/OPS-283 : datasource ์ํฐํฐ ์์ * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- Co-authored-by: EpicFn <[email protected]> * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * feat/OPS-226 : ์๋ฃ ๋ฑ๋ก ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-255 : ์๋ฃ ์ด๋ ๋ฐ ์์ ๊ตฌํ --------- Co-authored-by: Hyeok Jin Kim <[email protected]> Co-authored-by: EpicFn <[email protected]> * feat/OPS-289 : dataprocessor ์๋น์ค ์์ฑ (#59) * fix/OPS-318 : proxy host ์ค์์นญรฌ๏ฟฝ ssl ์ธ์ฆ์ ์ ์ง (#60) * [refactor/OPS-310] redirect url ๋ณ๊ฒฝ (#53) * refactor/OPS-310 : redirect-url ๋ณ๊ฒฝ. * refactor/OPS-310 : ์์ ์์ . * refactor/OPS-310 : ๋ ํ๋์ ์์ ์์ . * refactor/OPS-310 : ํฐ ์์ . * refactor/OPS-310 : ํ ์คํธ * refactor/OPS-310 : ์์ฒญ ์ฌํญ ๋ฐ์. * refactor/OPS-310 : ์์ฒญ ์ฌํญ ๋ฐ์ #2 * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ (#64) * [refactor/OPS-323] News API ์กฐํ ๋ก์ง ์์ . (#65) * ๋ฐฐํฌ ํ ์คํธ #2 * ๋ก์ง ์์ ํ ์คํธ * ๋ก์ง ์์ ํ ์คํธ #2 * refactor/OPS-322 : source ์นผ๋ผ๋ช ์์ (#68) * refactor/OPS-322 : source ์นผ๋ผ๋ช ์์ * refactor/OPS-322 : source ์นผ๋ผ๋ช ์์ * feat/OPS-321 : dataProcessorService์์ ์์ฝ ๋ก์ง ์์ฑ (#69) * [fix/OPS-317] CI/CD ํ์ดํ๋ผ์ธ ์ด๋ฒคํธ ๋ถ๋ฆฌ (#66) * fix : prod-server nginx ์ ๋ณด ์ถ๋ ฅ ์ ๊ฑฐ * fix : prod-server CD ์ํฌํ๋ก์ฐ main์ push๋ ๋ ์คํ๋๋๋ก ์์ * fix : test-server CI๋ pr์ develop์ ์คํ, CD๋ push๋ ๋ ์คํ * fix : test-server CI ์ํฌํ๋ก์ฐ์์ CD ๋ถ๋ถ ์ ๊ฑฐ * chore : ๋น๋์ aws๊ด๋ จ ์ ๋ณด application-secret.yml์ ๋ค์ด๊ฐ๋๋ก ์ค์ (#73) * chore : S3 ์ฌ์ฉ์ ์ํด ๋น๋์ AWS ์ ๋ณด application-secrets.yml์ ์ถ๊ฐ๋๋๋ก ์ค์ * chore : ์ญํ ์ S3 ์ ๊ทผ ์ ์ฑ ๋ถ์ฐฉ ํ๋๋ก ์ค์ * chore : รฃyml์ ์ถ๊ฐ์ ๋ณด ๋ฃ๋๋ก ์ค์ * [Feat/OPS-275] ์คํ์ด์ค ์ธ๋ค์ผ ์ด๋ฏธ์ง ์ ์ฅ (#71) * chore : S3 ํ๊ฒฝ ์ค์ * feat : S3Service ๊ตฌ์ฑ * chore : multipart ๋ฐ์ดํฐ ํฌ๊ธฐ ์ค์ * feat : S3 ์ ๋ก๋ ํ ์คํธ์ฉ ์๋ํฌ์ธํธ ์์ฑ * feat : S3 ์ฐ๋ ์๋ฃ * feat : space entity์ imageUrl ํญ๋ชฉ ์ถ๊ฐ * feat : ์ธ๋ค์ผ ์บก์ฒ ํ ์คํธ์ฉ * feat : ์ธ๋ค์ผ ์ดฌ์ ํ ์คํธ ์๋ํฌ์ธํธ ์์ฑ * feat : ์คํ์ด์ค ์ธ๋ค์ผ ๊ฐฑ์ API ์์ฑ * feat : ์คํ์ด์ค ์ด๋ฏธ์ง ๊ฐฑ์ ๊ธฐ๋ฅ ์์ฑ * feat : ์คํ์ด์ค ๋ชฉ๋ก ๋ฐํ ์ ์ธ๋ค์ผ url ๊ฐ์ด ๋ฐํ * feat : ์คํ์ด์ค ๋จ๊ฑด ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat : ์คํ์ด์ค ๋จ๊ฑด ์กฐํ ๊ตฌํ * feat : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ํ์ด์ง ๊ธฐ๋ฅ ์ถ๊ฐ --------- Co-authored-by: EpicFn <[email protected]> * [feat/OPS-324] ํฌ๋กฌ ํ์ฅ ํ๋ก๊ทธ๋จ ์์ ๋ก๊ทธ์ธ ๋ถ๊ธฐ & ์์ ๋ก๊ทธ์ธ ํ ์คํธ API ์ถ๊ฐ. (#70) * feat/OPS-324 : ํ์ฅ ํ๋ก๊ทธ๋จ ๋ถ๊ธฐ ๋ฐ ์์ ๋ก๊ทธ์ธ ํ ์คํธ API ์ถ๊ฐ. * feat/OPS-324 : ํ ์คํธ ๋ก์ง ์ผ๋ถ ์์ . * feat/OPS-324 : ํ ์คํธ ๋ก์ง ์ผ๋ถ ์์ . #2 * feat/OPS-324 : ํ ์คํธ ์๋ฃ, ํ ์คํธ ์ฝ๋ ์ ๊ฑฐ. * feat/OPS-324 : ๋ก๊ทธ์ธ ๋ถ๊ธฐ ์์ . * feat/OPS-324 : state ์ ๋ณด๋ฅผ ์ ์ฅํ๋ resolver ์ถ๊ฐ. * feat/OPS-324 : session ๋ฑ๋ก์ ์ํ OAuth2LoginSourceFilter ํด๋์ค ์ถ๊ฐ. * feat/OPS-324 : ํด๊ฒฐ * fix : ci ์ secrets ์์ S3 ๊ด๋ จ ์ํฌ๋ฆฟ ๊ฐ ์ญ์ ํ๋๋ก ๋ณ๊ฒฝ(๋ฒํท๋ช ์ ์ธ) (#74) * fix : ci ์ secrets ์์ S3 ๊ด๋ จ ์ํฌ๋ฆฟ ๊ฐ ์ญ์ ํ๋๋ก ๋ณ๊ฒฝ(๋ฒํท๋ช ์ ์ธ) * fix : CI ์คํ ์์ * fix : build ๋จ๊ณ์์ testest๋ฅผ ์ํํ์ง ์๋๋ก ๋ณ๊ฒฝ --------- Co-authored-by: EpicFn <[email protected]> * [feat/OPS-198] ์์นด์ด๋ธ ์ ๋ณด๋ก ๋ด์ค ๋ชฉ๋ก ์กฐํ (#75) * feat/OPS-198 : ์์นด์ด๋ธ ๊ธฐ๋ฐ ๋ด์ค ์กฐํ ๊ตฌํ. * feat/OPS-198 : ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ. * feat/OPS-265 : LLM-ํ์ฉ-๋ฐ์ดํฐ-์ ์ ํ-์-๊ธฐ์กด-์์นด์ด๋ธ์-ํ๊ทธ-์ฐ๋ (#77) * refactor/OPS-319: ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ (#76) * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * fix : SpringDoc๊ณผ Spring AI ๊ฐ ์์กด์ฑ ์ถฉ๋ ํด๊ฒฐ (#79) * [Feat/OPS-327] ์๋ฃ ๋ฑ๋ก llm ์ฐ๋ (#78) * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-327 : ์๋ฃ ๋ฑ๋ก LLM ์ฐ๋ * [feat/OPS-328] ์ธ์ฆ/์ธ๊ฐ ๋ก์ง ๋ณ๊ฒฝ (#80) * feat/OPS-328 : RefreshToken์ ์๋ฒ์์ ์ ์ฅํ๋๋ก ๋ณ๊ฒฝ. API ์ผ๋ถ ์์ . * feat/OPS-328 : ํ์ฅ ํ๋ก๊ทธ๋จ ๋ก๊ทธ์ธ ๋ฉ์๋ ์ถ๊ฐ ๋ฐ ๋ฐ์ดํฐ ์บ์ฑ ๋ฉ์๋ ์ถ๊ฐ. * [refactor/OPS-337] ์๊ตฌ์ฌํญ ๋ฐ์ ๋ฐ ์ผ๋ถ ๋ก์ง ์์ . (#81) * refactor/OPS-337 : ํ๋ก ํธ ์๊ตฌ์ฌํญ ๋ฐ์ ๋ฐ ์๋ฌ ์์ . * refactor/OPS-337 : ํ ์คํธ ์ผ์ด์ค ์์ . * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ (#82) * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : mock ์ถ๊ฐ๋ก ์ธํ testcase ์์ * [feat/OPS-338] ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ (#83) * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : mock ์ถ๊ฐ๋ก ์ธํ testcase ์์ * refactor/OPS-338 : Dev ํ ํฐ ๋ฐ๊ธ ์ปจํธ๋กค๋ฌ ์ถ๊ฐ * [Feat/OPS-326] ๋์๋ณด๋ ๋ฐ์ดํฐ ์ ์ฅ ์ฒด๊ณ ๊ตฌ์ถ (#85) * refactor : graph ๋๋ฉ์ธ์ dashboard ๋๋ฉ์ธ์ผ๋ก ์์ , dashboard ์ํฐํฐ ์์ฑ * feat : ์คํ์ด์ค ๋จ๊ฑด ์กฐํ ์ ๋์๋ณด๋ id๋ ํจ๊ป ๋ฐํ * refactor : API ๋ช ๋ณ๊ฒฝ * dashboard ๊ธฐ๋ฐ์ผ๋ก ์ ์ฅ/์กฐํ ๋๋๋ก ๋ณ๊ฒฝ * refactor : ํ ์คํธ ์ฝ๋ ์์ * fix : ๋ฐํ ๋ฉ์ธ์ง ์์ * feat : ์๋ช ๊ฒ์ฆ ๋ก์ง ๊ตฌํ * refactor : signature ์๋น์ค ๋ถ๋ฆฌ * fix : ์คํ ์์ * fix : CI ํ์ดํ๋ผ์ธ ์์ --------- Co-authored-by: EpicFn <[email protected]> * [feat/OPS-329] Sentry๋ฅผ ํตํ ๋ชจ๋ํฐ๋ง ํ๊ฒฝ ๊ตฌ์ถ. (#86) * feat/OPS-329 : Sentry๋ฅผ ํตํ ๋ชจ๋ํฐ๋ง ํ๊ฒฝ ๊ตฌ์ถ. * feat/OPS-329: ์ถ๊ฐ๋ก ํ๋ก ํธ ์๊ตฌ ์ฌํญ ๋ฐ์. * refactor/OPS-353 : ๋ถ๋ฆฌ ์๋ฃ. (#87) * [refactor/OPS-354] ํ ์คํธ ์ผ์ด์ค ์ฌ์ฉ ํ๋กํ ๋ณ๊ฒฝ. (#88) * refactor/OPS-354 : ํ ์คํธ ์ผ์ด์ค ์ฌ์ฉ ํ๋กํ ๋ณ๊ฒฝ. * refactor/OPS-354 : ์ด๋๋ ์๋ผ? * refactor/OPS-355 : ์๊ตฌ ์ฌํญ ๋ฐ์. (#91) * feat/OPS-358: Redis ์์กด์ฑ ์ถ๊ฐ ๋ฐ RedisConfig ์ค์ ์๋ฃ. AuthResultData ์ง๋ ฌํ ๋ฐ AuthResult ํด๋์ค์ TTL ๋์ . (#92) * feat/OPS-356 : ๋ค์ด๋ฒ ๋ธ๋ก๊ทธ ํฌ๋กค๋ฌ ์์ฑ (#93) * [feat/OPS-252] ์กฐ๊ฑด๋ณ ์๋ฃ ๊ฒ์ (#89) * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-327 : ์๋ฃ ๋ฑ๋ก LLM ์ฐ๋ * refactor/OPS-252 : ์กฐ๊ฑด๋ณ ์๋ฃ ๊ฒ์ ๊ตฌํ * refactor/OPS-252 : ์กฐ๊ฑด๋ณ ์๋ฃ ๊ฒ์ * fix : ์คํ์ด์ค, ์ฌ์ฉ์ ๋ชฉ๋ก ๋ฐํ ์ ํญ์ id ์ค๋ฆ์ฐจ์ ์ ๋ ฌ (#94) Co-authored-by: EpicFn <[email protected]> * IllegalStateException(๋์์ฑ ๋ฌธ์ )๊ด๋ จ ์ฒ๋ฆฌ ๋ฉ์๋ ์ถ๊ฐ. (#95) * [fix/OPS-362] ์๊ตฌ ์ฌํญ ๋ฐ์ (#96) * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์. * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#2 * [feat/OPS-341] ๋ฒจ๋ก๊ทธ ํฌ๋กค๋ฌ ์์ฑ (#90) * feat/OPS-341 : Velog ํฌ๋กค๋ฌ ์์ฑ * fix : createDate,modifyDate ์๋ ์ ์ฉ๋๋๋ก ์ค์ * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#3 (#97) * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#4 (#98) * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#5 (#99) * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#6 (#100) * [refactor/OPS-360] folder&datasource ๋ฆฌํํ ๋ง (#101) * refactor/OPS-360 : OpenAPI ์ ๋ํ ์ด์ ์ถ๊ฐ * refactor/OPS-360 : NoResultException ์์ธ ๋ถ๋ฆฌ * refactor/OPS-360 : param ์ถ๊ฐ * refactor/OPS-360 : param ์ถ๊ฐ * refactor/OPS-360 : default ํด๋ CRUD ๋ก์ง ์์ * refactor/OPS-360 : ํด๋ ๋ฆฌ์คํธ๋ ํธ์ถ ๋ก์ง ์์ * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#7 (#102) * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#8 (#103) * hotfix/OPS-346 : ํ์ผ ์กฐํ ์์ (#104) * [feat/OPS-365 ] soft delete + ํด์งํต ์กฐํ ๊ตฌํ (#105) * feat/OPS-365 : soft delete + ํด์งํต ์กฐํ ๊ตฌํ * refactor/OPS-246 : ์๊ตฌ์ฌํญ ๋ฆฌํฉํ ๋ง * chore : rabbitmq ํ๊ฒฝ์ค์ (#106) * chore : rabbitmq ๋ก์ปฌ ๊ฐ๋ฐ ํ๊ฒฝ ์ค์ * chore : rabbitmq ๊ด๋ จ springboot ํ๊ฒฝ ์ค์ * chore: rabbitmq ์์กด์ฑ ์ถ๊ฐ * [Feat/OPS-344] message queue ๊ตฌํ (#107) * chore : RabbitMQ ํ๊ฒฝ ์ค์ * chore : CI ํ์ดํ๋ผ์ธ์์ RabbitMQ ์ปจํ ์ด๋๋ฅผ ๋์์ ์ฌ์ฉํ๋๋ก ์ค์ * new : RabbitMQ ์ค์ ํด๋์ค, dto ์์ฑ * feat : producer method ์์ฑ * feat : ๋ฉ์ธ์ง ํ ๊ตฌํ ์๋ฃ * feat : ๋ฐ์ดํฐ ์ ์ฅ ์์ฒญ ํ ์คํธ ์ผ์ด์ค ์์ * feat : ConsumerTest ์ฝ๋ ์ถ๊ฐ * fix : ์ ์ฅ ํ ์คํธ ์ผ์ด์ค ์ฑ๊ณต * fix : ํ ์คํธ ์ฝ๋ ์์ ์ค * fix : ํ ์คํธ ์ผ์ด์ค ์ฑ๊ณต * feat : dlq ๋์ * feat : ๋ฐ์ดํฐ ์์ ๋ณด์ฅ์ ์ํด version ์ถ๊ฐ * refactor : MQConfig ํ์ผ ์์น ๋ณ๊ฒฝ * chore : RabbitMQ ํ๊ฒฝ ์ค์ # Conflicts: # docker-compose.yml # src/main/resources/application.yml * chore : CI ํ์ดํ๋ผ์ธ์์ RabbitMQ ์ปจํ ์ด๋๋ฅผ ๋์์ ์ฌ์ฉํ๋๋ก ์ค์ * new : RabbitMQ ์ค์ ํด๋์ค, dto ์์ฑ * feat : producer method ์์ฑ * feat : ๋ฉ์ธ์ง ํ ๊ตฌํ ์๋ฃ * feat : ๋ฐ์ดํฐ ์ ์ฅ ์์ฒญ ํ ์คํธ ์ผ์ด์ค ์์ * feat : ConsumerTest ์ฝ๋ ์ถ๊ฐ * fix : ์ ์ฅ ํ ์คํธ ์ผ์ด์ค ์ฑ๊ณต * fix : ํ ์คํธ ์ฝ๋ ์์ ์ค * fix : ํ ์คํธ ์ผ์ด์ค ์ฑ๊ณต * feat : dlq ๋์ * feat : ๋ฐ์ดํฐ ์์ ๋ณด์ฅ์ ์ํด version ์ถ๊ฐ * refactor : MQConfig ํ์ผ ์์น ๋ณ๊ฒฝ * fix : ์ต์ ์ฌํญ ๋ฐ์ * fix : copilot review ๋ฐ์ * feat : Dashboard์์ graph ์ฐธ์กฐ ๋ฐฉ์ EAGER -> LAZY ๋ก ๋ณ๊ฒฝ * CI ์คํจํด์ ๋ค์ EAGER๋ก ๋ณ๊ฒฝ * fix : ๋ค์ LAZY๋ก ๋ณ๊ฒฝ --------- Co-authored-by: EpicFn <[email protected]> * [Refactor/OPS-373] ์๋ฃ ์กฐํ ๊ฒ์ ์๊ตฌ์ฌํญ ์์ (#108) * refactor/OPS-373 : ์๋ฃ ์ด๋ฆ unique ์์ฑ ์ญ์ * refactor/OPS-373 : ์๋ฃ ์์ ๊ฐ๋ฅ ์นผ๋ผ ์ถ๊ฐ * refactor/OPS-373 : ๋ช ์์ null๊ณผ ๋ฏธ์ ๋ฌ ๊ตฌ๋ถ * [Feat/OPS-376] ์คํ์ด์ค ๋ชฉ๋ก ์ฐธ์ฌ ์ธ์ ๋ฐํ api ๊ตฌ์ฑ (#109) * refactor : dto ์ด๋ฆ ์ผ๋ถ ๋ณ๊ฒฝ * feat : ๊ตฌํ ์๋ฃ * feat : ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * fix : ํ ์คํธ ์ผ์ด์ค ์์ --------- Co-authored-by: EpicFn <[email protected]> * [Refactor/OPS-290] ๋ฐ์ดํฐ์์ค ์ ์ ํ ๊ธฐ๋ฅ ๊ณ ๋ํ (#112) * refactor/OPS-290 : ๋ฐ์ดํฐ์์ค ์ ์ ํ ๊ธฐ๋ฅ ๊ณ ๋ํ * [Feat/OPS-346] ๊ณต์ ํด๋ ๊ด๋ฆฌ (#113) * refactor/OPS-360 : OpenAPI ์ ๋ํ ์ด์ ์ถ๊ฐ * refactor/OPS-360 : NoResultException ์์ธ ๋ถ๋ฆฌ * refactor/OPS-360 : param ์ถ๊ฐ * refactor/OPS-360 : param ์ถ๊ฐ * refactor/OPS-360 : default ํด๋ CRUD ๋ก์ง ์์ * refactor/OPS-360 : ํด๋ ๋ฆฌ์คํธ๋ ํธ์ถ ๋ก์ง ์์ * refactor/OPS-346 : ๊ณต์ ํด๋ ๊ด๋ฆฌ * feat/OPS-365 : soft delete + ํด์งํต ์กฐํ ๊ตฌํ * feat/OPS-346 : ๊ณต์ ํด๋ ๊ด๋ฆฌ * feat/OPS-346 : ๊ณต์ ํด๋ ๊ด๋ฆฌ * refactor/OPS-346 : ๊ฐ์ธ / ๊ณต์ ํณ๋ ๊ด๋ฆฌ ๋ถ๋ฆฌ * refactor/OPS-346 : ๊ฒ์ ๊ธฐ๋ฅ ์ถ์ฒ ๋๋ฝ ์์ * feat : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ์ ์์ฑ ์ผ์๋ ๋ฐํ (#114) Co-authored-by: EpicFn <[email protected]> * [feat/OPS-377] ์ด์/ํ ์คํธ ์๋ฒ ๋ถ๋ฆฌ ์์ (#115) * feat/OPS-377 : ํ ์คํธ/์ด์ ํ๊ฒฝ ๋ถ๋ฆฌ * feat/OPS-377 : ํ ์คํธ/์ด์ ํ๊ฒฝ ๋ถ๋ฆฌ #2 * feat/OPS-377 : ํ ์คํธ/์ด์ ํ๊ฒฝ ๋ถ๋ฆฌ #3 * feat/OPS-377 : ํ ์คํธ/์ด์ ํ๊ฒฝ ๋ถ๋ฆฌ #4 * [Fix/OPS-378] ๋์๋ณด๋ ํ์ entity ์์ (#117) * fix : node, edge dto ์์ * fix : ํ ์คํธ ์ผ์ด์ค ์์ * fix : ํ ์คํธ ์์ ์๋ฃ * fix : ์คํ ์์ * fix : ์คํ ์ถ๊ฐ ์์ ; --------- Co-authored-by: EpicFn <[email protected]> * [Feat/OPS-379] liveblocks ์ฐ๋ (#118) * new : Liveblock API ํธ์ถ์ ์ํ Client ๋น ์์ฑ * feat : ์คํ์ด์ค ์์ฑ/์ญ์ ์ liveblocks room ๋ ํจ๊ป ์์ฑ/์ญ์ * fix : test ์ mock ๋น ์ฌ์ฉ * feat : jwt ๋ฐ๊ธ ๋ก์ง ๊ตฌํ --------- Co-authored-by: EpicFn <[email protected]> * [Feat/OPS-246] ๊ณต์ ํ์ผ ๊ด๋ฆฌ (#119) * refactor/OPS-360 : OpenAPI ์ ๋ํ ์ด์ ์ถ๊ฐ * refactor/OPS-360 : NoResultException ์์ธ ๋ถ๋ฆฌ * refactor/OPS-360 : param ์ถ๊ฐ * refactor/OPS-360 : param ์ถ๊ฐ * refactor/OPS-360 : default ํด๋ CRUD ๋ก์ง ์์ * refactor/OPS-360 : ํด๋ ๋ฆฌ์คํธ๋ ํธ์ถ ๋ก์ง ์์ * refactor/OPS-346 : ๊ณต์ ํด๋ ๊ด๋ฆฌ * feat/OPS-365 : soft delete + ํด์งํต ์กฐํ ๊ตฌํ * feat/OPS-346 : ๊ณต์ ํด๋ ๊ด๋ฆฌ * feat/OPS-346 : ๊ณต์ ํด๋ ๊ด๋ฆฌ * feat/OPS-246 : ๊ณต์ ํ์ผ ๊ด๋ฆฌ * refactor/OPS-346 : ๊ฐ์ธ / ๊ณต์ ํณ๋ ๊ด๋ฆฌ ๋ถ๋ฆฌ * refactor/OPS-346 : ๊ฐ์ธ / ๊ณต์ ํ์ผ ๊ด๋ฆฌ ๋ถ๋ฆฌ * refactor/OPS-346 : ๊ฒ์ ๊ธฐ๋ฅ ์ถ์ฒ ๋๋ฝ ์์ * feat/OPS-246 : ๊ฐ์ธ / ๊ณต์ ํ์ผ ๊ด๋ฆฌ ๋ถ๋ฆฌ * feat/OPS-246 : api ์์ฒญ ์์ * feat/OPS-246 : api ์์ฒญ ์์ - request ์ด๋ฆ ํต์ผ * refactor/OPS-246 : ๋จธ์ง * refactor/OPS-246 : ๋จธ์ง * [Feat/OPS-388] ๋ค๊ฑด์ญ์ DELETE ๋ณธ๋ฌธ ์์ (#122) * refactor/OPS-388 : ๋ค๊ฑด์ญ์ DELETE ๋ณธ๋ฌธ ์์ * refactor/OPS-388 : ๋ค๊ฑด์ญ์ DELETE ํ ์คํธ ์ผ์ด์ค ์์ * Hotfix/์คํ์ด์ค์ด๋๋ชฉ๋ก ๋ฐํ ์ invite id ํฌํจ (#123) * fix : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์ inviteId ๋ฐํํ๋๋ก ๋ณ๊ฒฝ * fix : ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ --------- Co-authored-by: EpicFn <[email protected]> * [Feat/OPS-379] liveblocks ์ฐ๋ (#124) * new : Liveblock API ํธ์ถ์ ์ํ Client ๋น ์์ฑ * feat : ์คํ์ด์ค ์์ฑ/์ญ์ ์ liveblocks room ๋ ํจ๊ป ์์ฑ/์ญ์ * fix : test ์ mock ๋น ์ฌ์ฉ * feat : jwt ๋ฐ๊ธ ๋ก์ง ๊ตฌํ * fix : SpaceArchiveDataSourceControllerTest์์ liveblocks ๋น mock ์ฒ๋ฆฌ * fix : ์คํ ์์ --------- Co-authored-by: EpicFn <[email protected]> * refactor : secrets๊ฐ ์ปจํ ์ด๋ ์คํ์ ํ๊ฒฝ๋ณ์๋ก ์ฃผ์ ๋๋๋ก ์์ (#120) * refactor: ๋น๋ ์ secrets.yml ํ์ผ ์ญ์ * refactor : ํ ์คํธ ์๋ฒ ํ๊ฒฝ๋ณ์ ์ฃผ์ ์ค์ * refactor : ์ด์์๋ฒ ํ๊ฒฝ๋ณ์ ์ฃผ์ ์ค์ * refactor : ์ด์ํ๊ฒฝ๋ณ YML ๋ถ๋ฆฌ ๋ฐ ๋ฐฐํฌ ํ๊ฒฝ ์ค์ ๊ตฌ์กฐ ๊ฐ์ * refactor : ๋ก์ปฌ(dev,test).yml ๋ณต๊ตฌ * refactor : ๋น๋์ ํ ์คํธ secrets.yml V2๋ก ๋ณ๊ฒฝ * refactor: gradle ํ ์คํธ์ ํ๊ฒฝ๋ณ์๋ก ์ค์ ๊ฐ ์ฃผ์ * refactor: ymlํ์ผ ๋ค์ฌ์ฐ๊ธฐ ์์ * refactor: yml ํ๋ ์ด์คํ๋ ๋ค์ด๋ฐ ๊ท์น ์ผ๊ด์ฑ ์ ์งํ๋๋ก ์์ * [Feat/ops-379] feat liveblocks ์ฐ๋ (#127) * new : Liveblock API ํธ์ถ์ ์ํ Client ๋น ์์ฑ * feat : ์คํ์ด์ค ์์ฑ/์ญ์ ์ liveblocks room ๋ ํจ๊ป ์์ฑ/์ญ์ * fix : test ์ mock ๋น ์ฌ์ฉ * feat : jwt ๋ฐ๊ธ ๋ก์ง ๊ตฌํ * fix : SpaceArchiveDataSourceControllerTest์์ liveblocks ๋น mock ์ฒ๋ฆฌ * fix : ์คํ ์์ * new : Liveblock API ํธ์ถ์ ์ํ Client ๋น ์์ฑ # Conflicts: # src/main/java/org/tuna/zoopzoop/backend/global/clients/liveblocks/LiveblocksClient.java --------- Co-authored-by: EpicFn <[email protected]> * fix : ์คํ ์์ (#128) Co-authored-by: EpicFn <[email protected]> * [Hotfix] ํ์ดํ๋ผ์ธ ์คํ ์์ (#129) * fix : ์คํ ์์ * fix : bucket ์คํ ์์ * fix: S3 ๊ด๋ จ ๊ฐ ๋กค๋ฐฑ --------- Co-authored-by: EpicFn <[email protected]> * refactor: s3 prefix separation (#131) * refactor: S3 prefix ํ๊ฒฝ๋ณ์ ๋ถ๋ฆฌ ๋ฐ server ํ๋กํ์ผ ์ค์ ์ถ๊ฐ * fix: cd ์คํ ์์ * fix : docker run ์ฃผ์ ์์ฐ * refactor: s3 prefix separation (#132) * refactor: S3 prefix ํ๊ฒฝ๋ณ์ ๋ถ๋ฆฌ ๋ฐ server ํ๋กํ์ผ ์ค์ ์ถ๊ฐ * fix: cd ์คํ ์์ * fix : docker run ์ฃผ์ ์์ฐ * fix: bucket ์คํ ์์ * fix: ์คํ ์ ๊ฑฐ * [fix/OPS-390] Secret ๊ฐ ๊ด๋ จ ์ผ๋ถ ์์ (#126) * fix/OPS-390 : secret ํ ํ๋ฆฟ ๋ฐ ์์ ์ฌํญ์ ๋ง๊ฒ ์ฝ๋ ๋ณ์๋ช ๋ณ๊ฒฝ. * feat/OPS-390: NEWS API ์์ ์ถ๊ฐ ์ฌํญ ๋ฐ์. * feat/OPS-390: CI ์ํฌํ๋ก์ฐ ์ผ๋ถ ์์ . * feat/OPS-390: ์ผ๋ถ placeholders ์์ . * feat/OPS-390: ์ผ๋ถ ๋ฌธ์ํ ํญ๋ชฉ ์์ . * refactor: s3 prefix ๋ถ๋ฆฌ ๋ฐ ci/cd ์์ ํ (#134) * refactor: S3 prefix ํ๊ฒฝ๋ณ์ ๋ถ๋ฆฌ ๋ฐ server ํ๋กํ์ผ ์ค์ ์ถ๊ฐ * fix: bucket ์คํ ์์ * [Hotfix] ๋ก๊ทธ์ธ ์๋ฌ ์์ (#135) * Update README.md * Remove unnecessary blank line in ApiV1DashboardController * [Feat/OPS-389] ์คํ์ด์ค ์ด๋ ์๋ฆผ ๊ตฌํ (#136) * new : emitter ๊ด๋ฆฌ service, controller ์์ฑ * feat : ํํธ๋นํธ ๋ก์ง ๊ตฌํ * fix : ๋น๋๊ธฐ ์ฒ๋ฆฌ ํ๋๋ก ๋ณ๊ฒฝ * feat : ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * fix : ํ ์คํธ ์์ * fix : ๋ถํ์ํ ์ด๋ ธํ ์ด์ ์ญ์ --------- Co-authored-by: EpicFn <[email protected]> * [feat/OPS-392] ์ฌ์ฉ์ ๊ฒ์ ๊ธฐ๋ฅ ์ถ๊ฐ (#137) * feat/OPS-392: ๊ฒ์ ๊ธฐ๋ฅ ์ถ๊ฐ & ElasticSearch ๊ตฌํ & ์ผ๋ถ ๋๋ฉ์ธ ์ค๋ฅ ์์ . * feat/OPS-392: CI ์ํฌํ๋ก์ฐ์ ElasticSearch ์๋น์ค ์ปจํ ์ด๋ ์์ฑ ๋ก์ง ์ถ๊ฐ. * feat/OPS-392: CI ์ํฌํ๋ก์ฐ์ ElasticSearch ์๋น์ค ์ปจํ ์ด๋ ์์ฑ ๋ก์ง ์ถ๊ฐ #2 * feat/OPS-392: ์ถ๊ฐ ๋๋ฉ์ธ ์ค๋ฅ ์์ . * feat/OPS-392: Docker-compose์ elastic-search ์๋น์ค ํญ๋ชฉ ์ถ๊ฐ. * fix: ๋๋ฉ์ธ ์์ฒญ ์ฌํญ์ ๋ง๊ฒ ์์ . (#138) * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. (#139) * ๋ฐฐํฌ์ฉ ์ปค๋ฐ (#140) * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #2 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. (#142) * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #2 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #3 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #4 * [Feat/OPS-391] ์์นด์ด๋ธ ์๋ฃ img ์๋ฃ ํ์ ์์ (#141) * feat/OPS-391 : ์ด๋ฏธ์ง ์์ multi part ๊ตฌํ * feat/OPS-391 : ์ด๋ฏธ์ง ์์ multi part ๊ตฌํ * refactor/OPS-391 : enum ๋์๋ฌธ์ ๋ฌด์ * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. (#143) * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. * ๋ฐฐํฌ์ฉ ์ปค๋ฐ. * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #2 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #3 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #4 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #5 * ๋ฐฐํฌ์ฉ ์ปค๋ฐ #6 * fix: ์ด์์๋ฒ rabbitmq ํ๊ฒฝ๋ณ์ ์ค์ (#144) * feat/OPS-393 : ํฐ์คํ ๋ฆฌ ํฌ๋กค๋ฌ ์์ฑ (#145) * fix/OPS-394: API ๋ฌธ์ํ ๋ฐ s3 ์ค๋ฅ ์์ #1 (#146) * [fix/OPS-394] ๋ฌธ์ํ ๋ฐ ์ค๋ฅ ์์ 3 (#148) * fix/OPS-394: API ๋ฌธ์ํ ๋ฐ s3 ์ค๋ฅ ์์ #3 * fix/OPS-394: API ๋ฌธ์ํ ๋ฐ s3 ์ค๋ฅ ์์ #4 * refactor/OPS-395: ๊ฒ์ ๋ก์ง ์์ . (#149) * fix: ๋ฒจ๋ก๊ทธ ํฌ๋กค๋ฌ ์์ฑ์ผ์ ํ์ฑ ์ด์ ํด๊ฒฐ (#111) * fix : ์์ฑ์ผ์ ํ์ฑ ์ด์ ํด๊ฒฐ * refactor: velog ํฌ๋กค๋ฌ ์ฐ์ ์์ ๋๊ฒ ์ค์ * fix: ๋ฒจ๋ก๊ทธ ํฌ๋กค๋ฌ ์์ธ ์ฒ๋ฆฌ ์ถ๊ฐ (HTML ์์ ์์ ์ ๋น ๋ฌธ์์ด, ์์ฑ์ผ ์์ ์ ๊ธฐ๋ณธ๊ฐ) * fix : docker ์คํ์ AWS ํ๊ฒฝ๋ณ์๊ฐ ์ ๊ฑฐ (#150) * fix: ์ค๋ฐ๊ฟ ๋ฌธ์ ๋ค ๊ณต๋ฐฑ ์ ๊ฑฐ ๋ฐ OPENAI API Key ์ด์ํ๊ฒฝ๊ฐ ๋ถ๋ฆฌ (#152) * refactor/OPS-396: n-gram analyzer ์ ์ฉ์ ํตํ ๊ฒ์ ๊ฒฐ๊ณผ ํฅ์ & OAuth2SuccessHandler ๋ก์ปฌ ํ๊ฒฝ ๋ถ๊ธฐ. (#154) * refactor/OPS-398: ์ธ์ฆ/์ธ๊ฐ ์ค๋ฅ ์์ (#155) * [Refactor/OPS-380] ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ๊ฐ์ (#156) * refactor : membership ์กฐํ ์ lazy loading์ ์ํ n+1 ๋ฌธ์ ๊ฐ์ * refactor : space์ member ๋ชฉ๋ก ์กฐํ ์ n+ 1 ๋ฌธ์ ํด๊ฒฐ --------- Co-authored-by: EpicFn <[email protected]> * Update README.md (#157) * Create DEV_GUIDE.md (#158) * Update README.md (#159) * fix/OPS-399: ๋ฆฌํ๋ ์ ํ ํฐ ์ด์ ์์ . (#160) * refactor/OPS-397 : ๊ฒ์ ์๊ตฌ์ฌํญ ๋ฐ์ (#161) * hotfix : ์คํ์ด์ค ์ด๋ฏธ์ง ์ ์ฅ ๋ก์ง ์์ (#163) * fix : ํ์ฅ์ ์ถ๊ฐํ๊ณ ๋ก๊ทธ ๋ฑ๋๋ก ๋ณ๊ฒฝ * fix : prefix ๋ก ๊ตฌ๋ถํ๋๋ก ๋ณ๊ฒฝ * fix : CI ๊ณผ์ ์ ๋๋ฏธ prefix ๊ฐ ์ถ๊ฐ * fix : ํ๊ฒฝ ํ์ผ์ prefix ์ถ๊ฐ * fix : ์คํ ์์ --------- Co-authored-by: EpicFn <[email protected]> * fix/OPS-399: ๋ฆฌํ๋ ์ ํ ํฐ ์ด์ ์์ #2 (#165) * fix : ์ด๋ฏธ์ง ๊ฒฝ๋ก ๋ฐ ๋ฐํ ํ์ ์์ (#166) Co-authored-by: EpicFn <[email protected]> * fix : Url ์์ (#167) Co-authored-by: EpicFn <[email protected]> * fix/OPS-400 : ์์ &์ญ์ ์๊ตฌ์ฌํญ ๋ฐ์ (#169) * fix: ์ด์์๋ฒ/ํ ์คํธ์๋ฒ vpc ๋ถ๋ฆฌ๋์ด ์์ด, rabbitmq host ๋ ๋ถ๋ฆฌ (#171) * fix : ๋ฉค๋ฒ ์ญ์ ์ ์ ๋ น ์คํ์ด์ค ์ญ์ ๋ก์ง ๊ตฌํ (#172) Co-authored-by: EpicFn <[email protected]> * Develop -> main ๋ณํฉ (#168) (#173) * [feat/OPS-262] GlobalExceptionHandler ์ค์ (#8) * feat: GlobalExceptionHandler ์งํ ์ฌํญ ์ ์ฅ. * feat/OPS-262 : GlobalExceptionHandler ์์ฑ ์๋ฃ. * [feat/OPS-126] Member ๋๋ฉ์ธ ๊ธฐ์ด ์ค๊ณ (#9) * feat/OPS-127 : Member ์ํฐํฐ ์์ฑ(ํ๋, ์ฐ๊ด ๊ด๊ณ, ์์ฑ์, ๋ฉ์๋) * feat/OPS-128 : MemberRepository ์์ฑ(name, email ๊ฒ์ ์ต์ ์ถ๊ฐ) * feat: GlobalExceptionHandler ์์ฑ์ ์ํ ์งํ ์ฌํญ ์ ์ฅ. * feat/OPS-129 : MemberService ์์ฑ(์กฐํ, ์์ฑ/์์ , ์ญ์ ) * feat/OPS-126 : Member ๋๋ฉ์ธ ์ค๊ณ ์๋ฃ. Service ํ ์คํธ ์ฝ๋ ์ถ๊ฐ * [Chore/OPS-264] ci ์ํฌํ๋ก์ฐ ๊ฐ์ (#10) * chore/OPS-264 : ci.yml ์์ * Update .github/workflows/ci.yml * Update .github/workflows/ci.yml --------- * Update .gitignore to exclude IntelliJ files (#11) Add .idea/ to .gitignore to exclude IntelliJ project files * feat/OPS-134 : ApiV1Controller ์์ฑ ์๋ฃ. (#12) * [chore/OPS-268] CI ์ํฌํ๋ก์ฐ ๊ฐ์ #2 (#15) ํ์ฌ ์์ ๋ก๊ทธ์ธ์ ์ฌ์ฉํ๋ ํน์ ๋ฏผ๊ฐํ ๊ฐ(JWT ํ ํฐ, ์์ client_id ๋ฑ)์ @value ์ด๋ ธํ ์ด์ ์ ํตํด ๋ฐ์์ค๊ณ ์์ต๋๋ค. ํ์ง๋ง ํด๋น ๋ฏผ๊ฐํ ๊ฐ์ ์ ์ฅํ yaml ํ์ผ์ ๋ ํฌ์งํ ๋ฆฌ์ ๋ฐ๋ก ์ฌ๋ฆด ์ ์๊ธฐ์, ๋ ํฌ์งํ ๋ฆฌ์ secrets์ ํด๋น ๊ฐ๋ค์ ์ ์ฅํด๋๊ณ , CI ์ํฌํ๋ก์ฐ์ ์ด ๊ฐ๋ค์ ์ฌ์ฉํด์ application-secrets.yml ํ์ผ์ ์์ฑํ๋ ๋ก์ง์ ์ถ๊ฐํ์ต๋๋ค. * [feat/OPS-155] ์์ ๋ก๊ทธ์ธ ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ(์นด์นด์ค) (#18) * feat/OPS-155 : ์์ ๋ก๊ทธ์ธ/ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ (์นด์นด์ค) ์๋ฃ. ์์ ์ฌํญ ๋ฐ์. * feat/OPS-155 : ์์ ๋ก๊ทธ์ธ/ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ (์นด์นด์ค) ์๋ฃ. ์์ ์ฌํญ ๋ฐ์ #2. * feat/OPS-155 : ์์ ๋ก๊ทธ์ธ/ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ (์นด์นด์ค) ์๋ฃ. ์์ ์ฌํญ ๋ฐ์ #3. * [chore/ops-130] Terraform์ ํ์ฉํด EC2 ์ธ์คํด์ค ์์ฑ ๋ฐ ์ค์ (#17) * chore/OPS-266 : EC2 ์ธ์คํด์ค ์์ฑ * chore/OPS-267 : VPC, IAM, SG ์ค์ * chore : ์๋ธ๋ท ์ค์ ์์ ๋ฐ nginx, mysql ๋ณผ๋ฅจ ๋ง์ดํธ ์ค์ ์ถ๊ฐ * chore : Dockerfile ์์ ๋ฐ EC2 ๋ณด์ ๊ทธ๋ฃน ์์ * chore : MYSQL ์ปจํ ์ด๋ ์คํ์ ์ด๊ธฐ DB ์ด๋ฆ ์ง์ ํ๋๋ก ์ค์ * fix/OPS-271 : SecurityConfig ๋ฐ Jwt ์ธ์ฆ ํํฐ ์์ (#19) * Feat/ops 209 be feat ํด๋ ์์ฑ (#21) * refactor: archive_id + name ๋ณตํฉ ์ ๋ํฌ ์ ์ฝ ์ถ๊ฐ * refactor: folder_id + title ๋ณตํฉ ์ ๋ํฌ ์ ์ฝ ์ถ๊ฐ * refactor: member_id, archive_id ๋จ์ผ ์ ๋ํฌ ์ ์ฝ ์ถ๊ฐ * refactor: ์ํฐํฐ ์ ์ฝ * feat/OPS-209-BE-feat-ํด๋-์์ฑ ์๋ฃ * feat/OPS-209-BE-feat-ํด๋-์์ฑ ์๋ฃ * fix : ์ปจ๋ฒค์ ํต์ผ (#22) * Feat/ops 210 be feat ํด๋ ์ญ์ (#23) * feat/OPS-210 : ํด๋ ์ญ์ ๊ตฌํ * [feat/OPS-151] llm ํ์ฉ ๋ฐ์ดํฐ ์ ์ ํ ๊ธฐ๋ฅ ๊ตฌํ (#27) - groq api๋ฅผ ์ด์ฉํ์ฌ ์์ฝ, ํ๊ทธ ์ถ์ถ ๊ธฐ๋ฅ ๊ตฌํ * [feat/OPS-158] ์์ ๋ก๊ทธ์ธ ํ์๊ฐ์ ๊ธฐ๋ฅ ๊ตฌํ(๊ตฌ๊ธ) (#28) * feat/OPS-158 : ์์ ๋ก๊ทธ์ธ(๊ตฌ๊ธ) ๊ตฌํ, JWT, Member, Auth ๋๋ฉ์ธ ๊ณ ๋ํ * feat/OPS-158 : ํ ์คํธ ์ผ์ด์ค ์์ . * fix/OPS-158 : template ์ถฉ๋ ํด๊ฒฐ. * fix/OPS-158 : @transactional import ์์ * feat/OPS-211 : ํด๋ ์ด๋ฆ ๋ณ๊ฒฝ ๊ตฌํ (#25) * feat/OPS-211 : ํด๋ ์ด๋ฆ ๋ณ๊ฒฝ ๊ตฌํ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * [chore/OPS-187] Terraform์ ํ์ฉํด RDS ์ธ์คํด์ค ์์ฑ ๋ฐ ์ค์ (#29) * chore/OPS-187 : Terraform์ ํ์ฉํด RDS ์ธ์คํด์ค ์์ฑ ๋ฐ ์ค์น * chore : RDS ์๋ธ๋ท ๊ทธ๋ฃน private์ผ๋ก ์์ * chore : AWS ๋ฆฌ์์ค ๋ค์ด๋ฐ ๊ท์น ์ ์ฉ * [feat] ์คํ์ด์ค ๋ฐ์ดํฐ ๊ด๋ฆฌ (#32) * new/OPS-222 : space controller, sevice, repository ๋น ์์ฑ # Conflicts: # src/main/java/org/tuna/zoopzoop/backend/global/initData/BaseInitData.java * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ์๋ํฌ์ธํธ ์ถ๊ฐ * new/OPS-222 : spaceControllerTest ํ์ผ ์ธํ * refactor/OPS-222 : ํ ์คํธ ํด๋์ค์ ๊ณต์ฉ ํํธ ์ถ์ ํด๋์ค๋ก ๋ถ๋ฆฌ * fix : ์ต์ ์ฌํญ ๋ฐ์ * fix/OPS-222 : ํ ์คํธ ์ฝ๋์์ ํ์ ๋ค๋ฅด๋ ๊ฑฐ ์์ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๊ตฌํ * feat/OPS-222 : space ๋จ์ ํธ๋ค๋ฌ, ์ปค์คํ ์๋ฌ ์์ฑ * fix/OPS-222 : controller ์์ฑ ํ ์คํธ ํต๊ณผ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๋ก์ง ์์ฑ * feat/OPS-222 : ์คํ์ด์ค ์ญ์ ๊ตฌํ * fix/OPS-222 : ํ ์คํธ ์ผ์ด์ค ํต๊ณผ * feat/OPS-245 : controller ๋จ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-245 : ์คํ์ด์ค ๋ช ๋ณ๊ฒฝ ๊ตฌํ * fix/OPS-244 : ์ด๋ฆ ๋ณ๊ฒฝ ์ saveAndFlush๋ก ์ฆ์ ๋ฐ์ * chore/OPS-222 : develop ์ต์ ์ฌํญ ๋ฐ์ * fix : ์ ์ฅ * fix/OPS-222 : globalExceptionHandler ์ปจ๋ฒค์ ํต์ผ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ controller ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-244 : membership ๊ด๋ฆฌ ๋น ์์ฑ * feat/OPS-244 : membership ์์ฑ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ฑ * fix : ํ ์คํธ ์ผ์ด์ค ๊ฐ ์ถฉ๋ ํด๊ฒฐ ์ค * fix : ์ต์ ์ฌํญ ๋ฐ์ * ์์์ ์ฅ * ์ด๊ธฐ ์ํ * fix : ๋ฏธ๋ด์ฑ ์ ์ฉ * feat/OPS-244 : ์คํ์ด์ค ๋ฉค๋ฒ ์ถ๊ฐ ๊ธฐ๋ฅ * fix : spaceControllerTest์ memberControllerTest ๊ฐ ์ถฉ๋ ํด๊ฒฐ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * chore/OPS-244 : ์ธ์ฆ ๊ด๋ จ ์ฝ๋ ์ฃผ์ ์ฒ๋ฆฌ * feat/OPS-270 : ์คํ์ด์ค ๋ก์ง์ ์ฌ์ฉ์ ์ ๋ณด ์ฒดํฌ ์ถ๊ฐ * feat/OPS-22 : ํ ์คํธ ์ผ์ด์ค์ WithUserDetails ๋ฐ์ * feat/OPS-222 : ์ธ์ฆ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * fix : ๋ถํ์ํ ์ฃผ์ ์ญ์ * new/OPS-222 : space controller, sevice, repository ๋น ์์ฑ # Conflicts: # src/main/java/org/tuna/zoopzoop/backend/global/initData/BaseInitData.java * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ์๋ํฌ์ธํธ ์ถ๊ฐ * new/OPS-222 : spaceControllerTest ํ์ผ ์ธํ * refactor/OPS-222 : ํ ์คํธ ํด๋์ค์ ๊ณต์ฉ ํํธ ์ถ์ ํด๋์ค๋ก ๋ถ๋ฆฌ * fix : ์ต์ ์ฌํญ ๋ฐ์ * fix/OPS-222 : ํ ์คํธ ์ฝ๋์์ ํ์ ๋ค๋ฅด๋ ๊ฑฐ ์์ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๊ตฌํ * feat/OPS-222 : space ๋จ์ ํธ๋ค๋ฌ, ์ปค์คํ ์๋ฌ ์์ฑ * fix/OPS-222 : controller ์์ฑ ํ ์คํธ ํต๊ณผ * feat/OPS-222 : ์คํ์ด์ค ์์ฑ ๋ก์ง ์์ฑ * feat/OPS-222 : ์คํ์ด์ค ์ญ์ ๊ตฌํ * fix/OPS-222 : ํ ์คํธ ์ผ์ด์ค ํต๊ณผ * feat/OPS-245 : controller ๋จ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-245 : ์คํ์ด์ค ๋ช ๋ณ๊ฒฝ ๊ตฌํ * fix/OPS-244 : ์ด๋ฆ ๋ณ๊ฒฝ ์ saveAndFlush๋ก ์ฆ์ ๋ฐ์ * chore/OPS-222 : develop ์ต์ ์ฌํญ ๋ฐ์ * fix : ์ ์ฅ * fix/OPS-222 : globalExceptionHandler ์ปจ๋ฒค์ ํต์ผ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ controller ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-244 : membership ๊ด๋ฆฌ ๋น ์์ฑ * feat/OPS-244 : membership ์์ฑ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ฑ * fix : ํ ์คํธ ์ผ์ด์ค ๊ฐ ์ถฉ๋ ํด๊ฒฐ ์ค * fix : ์ต์ ์ฌํญ ๋ฐ์ * ์์์ ์ฅ * ์ด๊ธฐ ์ํ * fix : ๋ฏธ๋ด์ฑ ์ ์ฉ * feat/OPS-244 : ์คํ์ด์ค ๋ฉค๋ฒ ์ถ๊ฐ ๊ธฐ๋ฅ * fix : spaceControllerTest์ memberControllerTest ๊ฐ ์ถฉ๋ ํด๊ฒฐ * feat/OPS-244 : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * chore/OPS-244 : ์ธ์ฆ ๊ด๋ จ ์ฝ๋ ์ฃผ์ ์ฒ๋ฆฌ * feat/OPS-270 : ์คํ์ด์ค ๋ก์ง์ ์ฌ์ฉ์ ์ ๋ณด ์ฒดํฌ ์ถ๊ฐ * feat/OPS-22 : ํ ์คํธ ์ผ์ด์ค์ WithUserDetails ๋ฐ์ * feat/OPS-222 : ์ธ์ฆ ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * fix : ๋ถํ์ํ ์ฃผ์ ์ญ์ * fix : ๋ถํ์ํ ํ์ผ ์ญ์ --------- * Ops 272 be feat ์๋ฃ ์ด๋ฆ ์กฐํ (#31) * feat/OPS-211 : ํด๋ ์ด๋ฆ ๋ณ๊ฒฝ ๊ตฌํ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * refactor/OPS-211 : ํด๋๋ช ์ค๋ณต ์์ธ์ฒ๋ฆฌ ์ถ๊ฐ * feat/OPS-272 : ํด๋/ํ์ผ ์กฐํ ๊ตฌํ * refactor/OPS-272 : tag ์์ฑ์ ์ถ๊ฐ * feat/OPS-195 : ๋ด์ค ๋ชฉ๋ก ์กฐํ ๊ธฐ๋ฅ ๊ตฌํ(์ต์ ๋ด์ค, ํค์๋ ๊ธฐ๋ฐ). ์๋น์ค ํ ์คํธ ์ถ๊ฐ. (#33) * refactor/OPS-277 : default ํด๋ ์๋ ์์ฑ (#34) * [chore/OPS-278] Auth, Member, News ๋๋ฉ์ธ ๋ฌธ์ํ ๋ฐ ๊ณ ๋ํ. (#35) * chore/OPS-278 : Auth ๋๋ฉ์ธ ๋ฌธ์ํ ์๋ฃ & ApiV1MemberController ์ถ๊ฐ ๊ธฐ๋ฅ ๊ตฌํ. * refactor/OPS-278 : ApiV1MemberController ์ถ๊ฐ ์ฌํญ์ ๋ง๊ฒ ํ ์คํธ ์ถ๊ฐ ๊ตฌํ. * refactor/OPS-278 : Member ์์ฑ ์, ๋๋คํ UUID์ ์ 5๊ธ์๋ฅผ ํ๊ทธ๋ก ์ฌ์ฉํ๋๋ก ๋ณ๊ฒฝ. * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- * refactor/OPS-283 : datasource ์ํฐํฐ ์์ (#39) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * [feat/OPS-175] ์น ํฌ๋กค๋ง ๋ฐ์ดํฐ ์ ์ ํ ๊ธฐ๋ฅ ๊ตฌํ (#41) * feat/OPS-175 : ์น ํฌ๋กค๋ง ๋ฐ์ดํฐ ์ ์ ํ ๊ธฐ๋ฅ ๊ตฌํ * [refactor/OPS-287] News ๋๋ฉ์ธ ๊ณ ๋ํ (#42) * refactor/OPS-287 : newsSearch ๋ฉ์๋ ๋ก์ง ๋ณ๊ฒฝ ๋ฐ ์ผ๋ถ API ๋ฌธ์ํ. * refactor/OPS-287 : NewsServiceTest API๋ฅผ ํธ์ถํ๋ ๋ฐฉ์์ผ๋ก ๋ณ๊ฒฝ. * Ops 226 be feat ์๋ฃ ๋ฑ๋ก (#44) * refactor/OPS-283 : datasource ์ํฐํฐ ์์ * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * feat/OPS-226 : ์๋ฃ ๋ฑ๋ก ๊ตฌํ * refactor/OPS-226 : ๋ฉ์๋ ๋ช ์์ --------- * Ops 215 be feat ์๋ฃ ์ญ์ (#46) * refactor/OPS-283 : datasource ์ํฐํฐ ์์ * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * feat/OPS-226 : ์๋ฃ ๋ฑ๋ก ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ --------- * [feat/OPS-293] LiveBlocks๋ฅผ ์ํ React-flow ๋ฐ์ดํฐ ๊ด๋ฆฌ ๋๋ฉ์ธ ์ค๊ณ ์๋ฃ. ํ ์คํธ ์ถ๊ฐ. (#47) * feat/OPS-293 : LiveBlocks๋ฅผ ์ํ React-flow ๋ฐ์ดํฐ ๊ด๋ฆฌ ๋๋ฉ์ธ ์ค๊ณ ์๋ฃ. ํ ์คํธ ์ถ๊ฐ. * feat/OPS-293 : folder ํ ์คํธ์ @transactional ์ถ๊ฐ. * feat/OPS-293 : MemberServiceTest ์์ #1 * feat/OPS-293 : MemberServiceTest ์์ #2 * feat/OPS-293 : Folder ํ ์คํธ์ ActiveProfile(test) ์ถ๊ฐ. * feat/OPS-293 : ํ ์คํธ์ ๋ฌด๊ฒฐ์ฑ ๊ฒ์ฆ์ ์ํ @afterall, @AfterEach ์ถ๊ฐ. * feat/OPS-293 : ์ผ๋ถ ์์ . * feat/OPS-293 : ์ง์ง ๋ง์ง๋ง ์์ . * [chore/ops-132] CI/CD ํ์ดํ๋ผ์ธ ๊ตฌ์ถ (#43) * chore/OPS-133 : CI ํ์ดํ๋ผ์ธ ๊ตฌ์ถ * chore: ํ ์คํธ/์ด์ ํ๊ฒฝ์ฉ GitHub Actions Terraform ์๋ ์ธํ๋ผ ์ ์ฉ ์ํฌํ๋ก์ฐ ์ถ๊ฐ * chore : ํ๊ฒฝ๋ณ์๋ก test/prod ์๋ฒ ๋ถ๋ฆฌ ๊ฐ๋ฅํ๋๋ก ์ค์ * chore/OPS-135 : CD ์ํฌํ๋ก์ฐ ์ถ๊ฐ * chore: CI ํ CD ์คํ๋๋๋ก ์ค์ * chore : CI ์ํฌํ๋ก์ฐ job ๋ถ๋ฆฌ(ํ ์คํธ,๋น๋/๋์ปค ๋น๋,ghcr push) * chore : docker build jobs์์ checkout ๋จ๊ณ ์ถ๊ฐ * chore: CI ์ํฌํ๋ก์ฐ job ๊ตฌ๋ถ ์์ฐ * chore : develop/main ๋ธ๋์น์ ๋ฐ๋ผ CI/CD ์ํฌํ๋ก์ฐ ๋ถ๋ฆฌ * chore : Spring Boot Acutator ์์กด์ฑ ์ถ๊ฐ * chore: Actions์์ SSH ์ ์ ํ docker ์คํ ๊ถํ ๊ฐ๋๋ก ์ค์ * chore: ์ปจํ ์ด๋ ์คํ ๋ก๊ทธ ํฐ๋ฏธ๋์ ์ถ๋ ฅ ์ค์ * chore : ํฌ์ค์ฒดํฌ ์ค์ * chore: secrets ์ง์ ssh ํ๊ฒฝ ๋ณ์๋ก ์ ๋ฌ * chore: ํ๊ฒฝ๋ณ์ ์ง์ docker run์ ๋ฃ๊ธฐ * chore: spdocker run ์์ ring profile ์ ๊ฑฐ * chore: nginx ์ค์ * chore: test-cd ์์ * chore: test-cd ์์ 2 * chore: ghcr ๋ก๊ทธ์ธ ํ ํฐ ์์ * chore: ๋์ปค ์ด๋ฏธ์ง pull ์ด๋ฆ ์์ * chore: ssh ๋ด ์์ ํ ghcr ๋ก๊ทธ์ธ * chore : ์ด๋ฏธ pullํ ์ด๋ฏธ์ง์ run ์ด๋ฏธ์ง ์ด๋ฆ ์ผ์น์ํค๊ธฐ * chore: mysql driver ์์กด์ฑ ์ถ๊ฐ * chore : ํฌ์ค์ฒดํฌ ์์ฒญ ์คํ๋ง ์ํ๋ฆฌํฐ ํํฐ์ ๊ฑธ๋ฆฌ์ง ์๋๋ก ์ค์ * chore: nginx ํฌํธ ์ค์์นญ ์ค์ * chore: nginx ํฌํธ ์ค์์นญ ์ค์ ์์ * chore: nginx ํฌํธ ์ค์์นญ ์ค์ ์์ 2 * chore: ์ด์์๋ฒ CD ์ํฌํ๋ก์ฐ ์์ * chore : prod-server ์ํฌํ๋ก์ฐ ํ์ฑํ ๊ฒฝ๋ก ์ค์ * chore : test commit ๋์ค์ ์ง์ฐ๊ธฐ * [Feat/OPS-214] ์คํ์ด์ค ๋ฉค๋ฒ ๊ด๋ฆฌ (#50) * feat/OPS-227 : ์คํ์ด์ค ๋ฉค๋ฒ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-227 : ์คํ์ด์ค ๋ชฉ๋ก ๋ฐํ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-251 : ๊ถํ ๋ณ๊ฒฝ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-214 : ๊ถํ ๋ณ๊ฒฝ ์๋ํฌ์ธํธ ๊ตฌํ * fix/OPS-214 : ๋จ์ ๋ฉ์ธ์ง ์ค๋ฅ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-214 : ๋ก์ง ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-251 : globalExceptionHandler์ ์ญ์ง๋ ฌํ ์คํจ ์๋ฌ ์ถ๊ฐ * refactor/OPS-214 : ๋น์ฆ๋์ค ๋ก์ง์ ์๋น์ค ๊ณ์ธต์ ์ผ์ * feat/OPS-231 : ์คํ์ด์ค ์ด๋ ์ปจํธ๋กค๋ฌ ํ ์คํธ์ผ์ด์ค ์์ฑ * feat/OPS-231 : ์คํ์ด์ค ์ด๋ ๋ก์ง ์์ฑ * feat/OPS-231 : ์คํ์ด์ค์ด๋ ์๋น์ค ๋น ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * feat/OPS-228 : ํ์ ํด์ถ ์ปจํธ๋กค๋ฌ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feeat/OPS-229 : ํ์ ํด์ถ ๊ตฌํ ์๋ฃ * fix : ๊ธฐ์กด ํ ์คํธ ์ผ์ด์ค ์ผ๊ด์ฑ ์๊ฒ ์์ * feat : ๋ฉค๋ฒ ํด์ถ ์๋น์ค ํ ์คํธ ์ฝ๋ ์์ฑ * refactor : DTO ํจํค์ง ๋ณ๊ฒฝ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ์ปจํธ๋กค๋ฌ ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ๋ก์ง ์์ฑ * refactor : space ๋๋ฉ์ธ dto ํจํค์ง ๋ณ๊ฒฝ * feat/OPS-227 : ์คํ์ด์ค ๋ฉค๋ฒ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-227 : ์คํ์ด์ค ๋ชฉ๋ก ๋ฐํ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-251 : ๊ถํ ๋ณ๊ฒฝ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-214 : ๊ถํ ๋ณ๊ฒฝ ์๋ํฌ์ธํธ ๊ตฌํ * fix/OPS-214 : ๋จ์ ๋ฉ์ธ์ง ์ค๋ฅ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-214 : ๋ก์ง ๊ด๋ จ ํ ์คํธ ์ผ์ด์ค ์์ * fix/OPS-251 : globalExceptionHandler์ ์ญ์ง๋ ฌํ ์คํจ ์๋ฌ ์ถ๊ฐ * refactor/OPS-214 : ๋น์ฆ๋์ค ๋ก์ง์ ์๋น์ค ๊ณ์ธต์ ์ผ์ * feat/OPS-231 : ์คํ์ด์ค ์ด๋ ์ปจํธ๋กค๋ฌ ํ ์คํธ์ผ์ด์ค ์์ฑ * feat : ์ต์ ์ฌํญ ๋ฐ์ * feat/OPS-231 : ์คํ์ด์ค์ด๋ ์๋น์ค ๋น ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ * feat/OPS-228 : ํ์ ํด์ถ ์ปจํธ๋กค๋ฌ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feeat/OPS-229 : ํ์ ํด์ถ ๊ตฌํ ์๋ฃ * fix : ๊ธฐ์กด ํ ์คํธ ์ผ์ด์ค ์ผ๊ด์ฑ ์๊ฒ ์์ * feat : ๋ฉค๋ฒ ํด์ถ ์๋น์ค ํ ์คํธ ์ฝ๋ ์์ฑ * refactor : DTO ํจํค์ง ๋ณ๊ฒฝ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ์ปจํธ๋กค๋ฌ ๋จ์ ํ ์คํธ ์์ฑ * feat/OPS-294 : ์คํ์ด์ค ๋๊ฐ๊ธฐ ๋ก์ง ์์ฑ * refactor : space ๋๋ฉ์ธ dto ํจํค์ง ๋ณ๊ฒฝ --------- * refactor/OPS-308 : ๋๋ฉ์ธ ๋ถ๋ฆฌ & CI ์ํฌํ๋ก์ฐ์ application-secrets-server.yml ์ถ๊ฐ. (#52) * Ops 255 be feat ์๋ฃ ์์ (#54) * refactor/OPS-283 : datasource ์ํฐํฐ ์์ * [Feat/OPS-186] ์คํ์ด์ค ์ด๋ ๊ด๋ฆฌ (#38) * new/OPS-189 : ์ด๋ ๊ด๋ฆฌ Controller ๋ฐ ํ ์คํธ ํด๋์ค ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ด๋ จ ํ ์คํธ ์ฝ๋ ์์ฑ * feat : ๋ฉค๋ฒ ๊ถํ ๋ณ๊ฒฝ ํจ์ ์์ฑ * feat/OPS-189 : ์ด๋ ์๋ฝ ๊ตฌํ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat/OPS-190 : ์ด๋ ๊ฑฐ์ ์๋ํฌ์ธํธ ์์ฑ * feat/OPS-190 : membershipService ๊ด๋ จ ๋จ์ ํ ์คํธ ์ถ๊ฐ * refactor : ์ฝ๋ ๊ฐ๋จํ ์์น ์กฐ์ * feat/OPS-188 : ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ฃ * fix/OPS-188 : dto ๋ค์ด๋ฐ ์์ * refactor/OPS-188 : ์คํ์ด์ค์ ์ด๋๋ ์ ์ ๋ชฉ๋ก ์กฐํ์ controller ์์น ๋ณ๊ฒฝ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ์๋ํฌ์ธํธ ์์ฑ * feat : ์ฌ์ฉ์์๊ฒ ์จ ์คํ์ด์ค ์ด๋ ๋ชฉ๋ก ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ --------- * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ (#40) * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * refactor/OPS-285 : datasource ์ํฐํฐ thumbnailUrl ์ด๋ฆ ๋ณ๊ฒฝ * feat/OPS-226 : ์๋ฃ ๋ฑ๋ก ๊ตฌํ * feat/OPS-215 : ์๋ฃ ์ญ์ ๊ตฌํ * feat/OPS-255 : ์๋ฃ ์ด๋ ๋ฐ ์์ ๊ตฌํ --------- * feat/OPS-289 : dataprocessor ์๋น์ค ์์ฑ (#59) * fix/OPS-318 : proxy host ์ค์์นญรฌ๏ฟฝ ssl ์ธ์ฆ์ ์ ์ง (#60) * [refactor/OPS-310] redirect url ๋ณ๊ฒฝ (#53) * refactor/OPS-310 : redirect-url ๋ณ๊ฒฝ. * refactor/OPS-310 : ์์ ์์ . * refactor/OPS-310 : ๋ ํ๋์ ์์ ์์ . * refactor/OPS-310 : ํฐ ์์ . * refactor/OPS-310 : ํ ์คํธ * refactor/OPS-310 : ์์ฒญ ์ฌํญ ๋ฐ์. * refactor/OPS-310 : ์์ฒญ ์ฌํญ ๋ฐ์ #2 * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ (#64) * [refactor/OPS-323] News API ์กฐํ ๋ก์ง ์์ . (#65) * ๋ฐฐํฌ ํ ์คํธ #2 * ๋ก์ง ์์ ํ ์คํธ * ๋ก์ง ์์ ํ ์คํธ #2 * refactor/OPS-322 : source ์นผ๋ผ๋ช ์์ (#68) * refactor/OPS-322 : source ์นผ๋ผ๋ช ์์ * refactor/OPS-322 : source ์นผ๋ผ๋ช ์์ * feat/OPS-321 : dataProcessorService์์ ์์ฝ ๋ก์ง ์์ฑ (#69) * [fix/OPS-317] CI/CD ํ์ดํ๋ผ์ธ ์ด๋ฒคํธ ๋ถ๋ฆฌ (#66) * fix : prod-server nginx ์ ๋ณด ์ถ๋ ฅ ์ ๊ฑฐ * fix : prod-server CD ์ํฌํ๋ก์ฐ main์ push๋ ๋ ์คํ๋๋๋ก ์์ * fix : test-server CI๋ pr์ develop์ ์คํ, CD๋ push๋ ๋ ์คํ * fix : test-server CI ์ํฌํ๋ก์ฐ์์ CD ๋ถ๋ถ ์ ๊ฑฐ * chore : ๋น๋์ aws๊ด๋ จ ์ ๋ณด application-secret.yml์ ๋ค์ด๊ฐ๋๋ก ์ค์ (#73) * chore : S3 ์ฌ์ฉ์ ์ํด ๋น๋์ AWS ์ ๋ณด application-secrets.yml์ ์ถ๊ฐ๋๋๋ก ์ค์ * chore : ์ญํ ์ S3 ์ ๊ทผ ์ ์ฑ ๋ถ์ฐฉ ํ๋๋ก ์ค์ * chore : รฃyml์ ์ถ๊ฐ์ ๋ณด ๋ฃ๋๋ก ์ค์ * [Feat/OPS-275] ์คํ์ด์ค ์ธ๋ค์ผ ์ด๋ฏธ์ง ์ ์ฅ (#71) * chore : S3 ํ๊ฒฝ ์ค์ * feat : S3Service ๊ตฌ์ฑ * chore : multipart ๋ฐ์ดํฐ ํฌ๊ธฐ ์ค์ * feat : S3 ์ ๋ก๋ ํ ์คํธ์ฉ ์๋ํฌ์ธํธ ์์ฑ * feat : S3 ์ฐ๋ ์๋ฃ * feat : space entity์ imageUrl ํญ๋ชฉ ์ถ๊ฐ * feat : ์ธ๋ค์ผ ์บก์ฒ ํ ์คํธ์ฉ * feat : ์ธ๋ค์ผ ์ดฌ์ ํ ์คํธ ์๋ํฌ์ธํธ ์์ฑ * feat : ์คํ์ด์ค ์ธ๋ค์ผ ๊ฐฑ์ API ์์ฑ * feat : ์คํ์ด์ค ์ด๋ฏธ์ง ๊ฐฑ์ ๊ธฐ๋ฅ ์์ฑ * feat : ์คํ์ด์ค ๋ชฉ๋ก ๋ฐํ ์ ์ธ๋ค์ผ url ๊ฐ์ด ๋ฐํ * feat : ์คํ์ด์ค ๋จ๊ฑด ์กฐํ ํ ์คํธ ์ผ์ด์ค ์์ฑ * feat : ์คํ์ด์ค ๋จ๊ฑด ์กฐํ ๊ตฌํ * feat : ์คํ์ด์ค ๋ชฉ๋ก ์กฐํ ํ์ด์ง ๊ธฐ๋ฅ ์ถ๊ฐ --------- * [feat/OPS-324] ํฌ๋กฌ ํ์ฅ ํ๋ก๊ทธ๋จ ์์ ๋ก๊ทธ์ธ ๋ถ๊ธฐ & ์์ ๋ก๊ทธ์ธ ํ ์คํธ API ์ถ๊ฐ. (#70) * feat/OPS-324 : ํ์ฅ ํ๋ก๊ทธ๋จ ๋ถ๊ธฐ ๋ฐ ์์ ๋ก๊ทธ์ธ ํ ์คํธ API ์ถ๊ฐ. * feat/OPS-324 : ํ ์คํธ ๋ก์ง ์ผ๋ถ ์์ . * feat/OPS-324 : ํ ์คํธ ๋ก์ง ์ผ๋ถ ์์ . #2 * feat/OPS-324 : ํ ์คํธ ์๋ฃ, ํ ์คํธ ์ฝ๋ ์ ๊ฑฐ. * feat/OPS-324 : ๋ก๊ทธ์ธ ๋ถ๊ธฐ ์์ . * feat/OPS-324 : state ์ ๋ณด๋ฅผ ์ ์ฅํ๋ resolver ์ถ๊ฐ. * feat/OPS-324 : session ๋ฑ๋ก์ ์ํ OAuth2LoginSourceFilter ํด๋์ค ์ถ๊ฐ. * feat/OPS-324 : ํด๊ฒฐ * fix : ci ์ secrets ์์ S3 ๊ด๋ จ ์ํฌ๋ฆฟ ๊ฐ ์ญ์ ํ๋๋ก ๋ณ๊ฒฝ(๋ฒํท๋ช ์ ์ธ) (#74) * fix : ci ์ secrets ์์ S3 ๊ด๋ จ ์ํฌ๋ฆฟ ๊ฐ ์ญ์ ํ๋๋ก ๋ณ๊ฒฝ(๋ฒํท๋ช ์ ์ธ) * fix : CI ์คํ ์์ * fix : build ๋จ๊ณ์์ testest๋ฅผ ์ํํ์ง ์๋๋ก ๋ณ๊ฒฝ --------- * [feat/OPS-198] ์์นด์ด๋ธ ์ ๋ณด๋ก ๋ด์ค ๋ชฉ๋ก ์กฐํ (#75) * feat/OPS-198 : ์์นด์ด๋ธ ๊ธฐ๋ฐ ๋ด์ค ์กฐํ ๊ตฌํ. * feat/OPS-198 : ํ ์คํธ ์ผ์ด์ค ์ถ๊ฐ. * feat/OPS-265 : LLM-ํ์ฉ-๋ฐ์ดํฐ-์ ์ ํ-์-๊ธฐ์กด-์์นด์ด๋ธ์-ํ๊ทธ-์ฐ๋ (#77) * refactor/OPS-319: ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ (#76) * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * fix : SpringDoc๊ณผ Spring AI ๊ฐ ์์กด์ฑ ์ถฉ๋ ํด๊ฒฐ (#79) * [Feat/OPS-327] ์๋ฃ ๋ฑ๋ก llm ์ฐ๋ (#78) * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-327 : ์๋ฃ ๋ฑ๋ก LLM ์ฐ๋ * [feat/OPS-328] ์ธ์ฆ/์ธ๊ฐ ๋ก์ง ๋ณ๊ฒฝ (#80) * feat/OPS-328 : RefreshToken์ ์๋ฒ์์ ์ ์ฅํ๋๋ก ๋ณ๊ฒฝ. API ์ผ๋ถ ์์ . * feat/OPS-328 : ํ์ฅ ํ๋ก๊ทธ๋จ ๋ก๊ทธ์ธ ๋ฉ์๋ ์ถ๊ฐ ๋ฐ ๋ฐ์ดํฐ ์บ์ฑ ๋ฉ์๋ ์ถ๊ฐ. * [refactor/OPS-337] ์๊ตฌ์ฌํญ ๋ฐ์ ๋ฐ ์ผ๋ถ ๋ก์ง ์์ . (#81) * refactor/OPS-337 : ํ๋ก ํธ ์๊ตฌ์ฌํญ ๋ฐ์ ๋ฐ ์๋ฌ ์์ . * refactor/OPS-337 : ํ ์คํธ ์ผ์ด์ค ์์ . * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ (#82) * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : mock ์ถ๊ฐ๋ก ์ธํ testcase ์์ * [feat/OPS-338] ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ (#83) * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : ์์นด์ด๋ธ mock ๋ฐ์ดํฐ ์ ๋ ฅ * refactor/OPS-338 : mock ์ถ๊ฐ๋ก ์ธํ testcase ์์ * refactor/OPS-338 : Dev ํ ํฐ ๋ฐ๊ธ ์ปจํธ๋กค๋ฌ ์ถ๊ฐ * [Feat/OPS-326] ๋์๋ณด๋ ๋ฐ์ดํฐ ์ ์ฅ ์ฒด๊ณ ๊ตฌ์ถ (#85) * refactor : graph ๋๋ฉ์ธ์ dashboard ๋๋ฉ์ธ์ผ๋ก ์์ , dashboard ์ํฐํฐ ์์ฑ * feat : ์คํ์ด์ค ๋จ๊ฑด ์กฐํ ์ ๋์๋ณด๋ id๋ ํจ๊ป ๋ฐํ * refactor : API ๋ช ๋ณ๊ฒฝ * dashboard ๊ธฐ๋ฐ์ผ๋ก ์ ์ฅ/์กฐํ ๋๋๋ก ๋ณ๊ฒฝ * refactor : ํ ์คํธ ์ฝ๋ ์์ * fix : ๋ฐํ ๋ฉ์ธ์ง ์์ * feat : ์๋ช ๊ฒ์ฆ ๋ก์ง ๊ตฌํ * refactor : signature ์๋น์ค ๋ถ๋ฆฌ * fix : ์คํ ์์ * fix : CI ํ์ดํ๋ผ์ธ ์์ --------- * [feat/OPS-329] Sentry๋ฅผ ํตํ ๋ชจ๋ํฐ๋ง ํ๊ฒฝ ๊ตฌ์ถ. (#86) * feat/OPS-329 : Sentry๋ฅผ ํตํ ๋ชจ๋ํฐ๋ง ํ๊ฒฝ ๊ตฌ์ถ. * feat/OPS-329: ์ถ๊ฐ๋ก ํ๋ก ํธ ์๊ตฌ ์ฌํญ ๋ฐ์. * refactor/OPS-353 : ๋ถ๋ฆฌ ์๋ฃ. (#87) * [refactor/OPS-354] ํ ์คํธ ์ผ์ด์ค ์ฌ์ฉ ํ๋กํ ๋ณ๊ฒฝ. (#88) * refactor/OPS-354 : ํ ์คํธ ์ผ์ด์ค ์ฌ์ฉ ํ๋กํ ๋ณ๊ฒฝ. * refactor/OPS-354 : ์ด๋๋ ์๋ผ? * refactor/OPS-355 : ์๊ตฌ ์ฌํญ ๋ฐ์. (#91) * feat/OPS-358: Redis ์์กด์ฑ ์ถ๊ฐ ๋ฐ RedisConfig ์ค์ ์๋ฃ. AuthResultData ์ง๋ ฌํ ๋ฐ AuthResult ํด๋์ค์ TTL ๋์ . (#92) * feat/OPS-356 : ๋ค์ด๋ฒ ๋ธ๋ก๊ทธ ํฌ๋กค๋ฌ ์์ฑ (#93) * [feat/OPS-252] ์กฐ๊ฑด๋ณ ์๋ฃ ๊ฒ์ (#89) * refactor/OPS-255 : datasource ํ ์ด๋ธ sources ์นผ๋ผ ์ถ๊ฐ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-319 : ์์นด์ด๋ธ ๋ก๊ทธ์ธ ์ฐ๋ * refactor/OPS-327 : ์๋ฃ ๋ฑ๋ก LLM ์ฐ๋ * refactor/OPS-252 : ์กฐ๊ฑด๋ณ ์๋ฃ ๊ฒ์ ๊ตฌํ * refactor/OPS-252 : ์กฐ๊ฑด๋ณ ์๋ฃ ๊ฒ์ * fix : ์คํ์ด์ค, ์ฌ์ฉ์ ๋ชฉ๋ก ๋ฐํ ์ ํญ์ id ์ค๋ฆ์ฐจ์ ์ ๋ ฌ (#94) * IllegalStateException(๋์์ฑ ๋ฌธ์ )๊ด๋ จ ์ฒ๋ฆฌ ๋ฉ์๋ ์ถ๊ฐ. (#95) * [fix/OPS-362] ์๊ตฌ ์ฌํญ ๋ฐ์ (#96) * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์. * fix/OPS-362 : ์๊ตฌ์ฌํญ ๋ฐ์#2 * [feat/OPS-341] ๋ฒจ๋ก๊ทธ โฆ
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
๐ข ๊ธฐ๋ฅ ์ค๋ช
ํ์์ ์คํ๊ฒฐ๊ณผ ์คํฌ๋ฆฐ์ท ์ฒจ๋ถ
๐ฉท Approve ํ๊ธฐ ์ ํ์ธํด์ฃผ์ธ์!
โ ์ฒดํฌ๋ฆฌ์คํธ