From 336f077158975c1a2d8212367caec0f550854e61 Mon Sep 17 00:00:00 2001 From: kor-Chipmunk Date: Mon, 19 Feb 2024 19:49:57 +0900 Subject: [PATCH 1/8] =?UTF-8?q?chore:=20develop=20=EB=B8=8C=EB=9E=9C?= =?UTF-8?q?=EC=B9=98=20=EB=B0=B0=ED=8F=AC=20=EC=8A=A4=ED=81=AC=EB=A6=BD?= =?UTF-8?q?=ED=8A=B8=20=EC=BD=94=EB=93=9C=EC=97=90=20`git=20pull`=20?= =?UTF-8?q?=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- scripts/update_from_develop.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/scripts/update_from_develop.sh b/scripts/update_from_develop.sh index b2aa8516..5c84d01c 100755 --- a/scripts/update_from_develop.sh +++ b/scripts/update_from_develop.sh @@ -36,6 +36,7 @@ SERVER_ORDER=( for SERVER in ${SERVER_ORDER[@]}; do git checkout $SERVER + git pull git rebase develop git push -f done From 8dd3274caddcb7ba041acde2d423d5780fca5d1d Mon Sep 17 00:00:00 2001 From: kor-Chipmunk Date: Mon, 19 Feb 2024 19:53:00 +0900 Subject: [PATCH 2/8] =?UTF-8?q?fix:=20common=20=EB=AA=A8=EB=93=88=20?= =?UTF-8?q?=EC=9D=98=EC=A1=B4=EC=84=B1=20=EC=88=9C=ED=99=98=20=EC=B0=B8?= =?UTF-8?q?=EC=A1=B0=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/backend/chart-server/build.gradle.kts | 2 +- src/backend/chart-server/chart-api/build.gradle.kts | 2 -- .../kotlin/com/lalala/chart/controller/ChartController.kt | 4 ++-- 3 files changed, 3 insertions(+), 5 deletions(-) diff --git a/src/backend/chart-server/build.gradle.kts b/src/backend/chart-server/build.gradle.kts index 16ccfce9..0f5a489f 100644 --- a/src/backend/chart-server/build.gradle.kts +++ b/src/backend/chart-server/build.gradle.kts @@ -36,7 +36,7 @@ allprojects { } subprojects { - if (project.name == "common-module") { + if (project.name.startsWith("common")) { return@subprojects } diff --git a/src/backend/chart-server/chart-api/build.gradle.kts b/src/backend/chart-server/chart-api/build.gradle.kts index 13723e07..6e5a60aa 100644 --- a/src/backend/chart-server/chart-api/build.gradle.kts +++ b/src/backend/chart-server/chart-api/build.gradle.kts @@ -3,8 +3,6 @@ tasks.getByName("bootJar") { } dependencies { - implementation(project(":common-module")) - implementation("org.springframework.boot:spring-boot-starter-data-mongodb-reactive") implementation("org.springframework.boot:spring-boot-starter-webflux") diff --git a/src/backend/chart-server/chart-api/src/main/kotlin/com/lalala/chart/controller/ChartController.kt b/src/backend/chart-server/chart-api/src/main/kotlin/com/lalala/chart/controller/ChartController.kt index 8fd74784..a589bd1f 100644 --- a/src/backend/chart-server/chart-api/src/main/kotlin/com/lalala/chart/controller/ChartController.kt +++ b/src/backend/chart-server/chart-api/src/main/kotlin/com/lalala/chart/controller/ChartController.kt @@ -32,7 +32,7 @@ class ChartController( BaseResponse.from( HttpStatus.OK.value(), "차트를 조회했습니다.", - it + it, ) } @@ -47,7 +47,7 @@ class ChartController( BaseResponse.from( HttpStatus.OK.value(), "차트를 생성했습니다.", - it + it, ) } } From ad7a0461ee5e38bb4518b529cd9b02b92c7fccf5 Mon Sep 17 00:00:00 2001 From: kor-Chipmunk Date: Mon, 19 Feb 2024 19:54:33 +0900 Subject: [PATCH 3/8] =?UTF-8?q?fix:=20`INVALID=5FTOKEN`=20=EB=B3=80?= =?UTF-8?q?=EA=B2=BD=EB=90=9C=20`ErrorCode`=20=EC=97=90=20=EC=B6=94?= =?UTF-8?q?=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/src/main/java/com/lalala/exception/ErrorCode.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/backend/common-module/common/src/main/java/com/lalala/exception/ErrorCode.java b/src/backend/common-module/common/src/main/java/com/lalala/exception/ErrorCode.java index 2334d2a6..65191604 100644 --- a/src/backend/common-module/common/src/main/java/com/lalala/exception/ErrorCode.java +++ b/src/backend/common-module/common/src/main/java/com/lalala/exception/ErrorCode.java @@ -40,7 +40,8 @@ public enum ErrorCode { DUPLICATE_EMAIL(400, "5003", "이메일이 중복됩니다."), SEND_MAIL_ERROR(400, "5004", "메일 전송 중 에러가 발생했습니다."), NOT_VALID_CODE(400, "5005", "유효한 코드가 아닙니다."), - JWT_TOKEN_EXPIRED(400, "5006", "JWT 토큰이 만료됐습니다."), + JWT_TOKEN_EXPIRED(400, "5006", "토큰이 만료됐습니다."), + INVALID_TOKEN(400, "5007", "유효한 토큰이 아닙니다."), // 6,000 ~ 6,999 : PlayList / Feed PLAYLIST_NOT_FOUND(400, "6000", "해당하는 플레이리스트가 없습니다."), From 9be5811e6c7cf67a2f2a41abf92d57cdfb3d5d93 Mon Sep 17 00:00:00 2001 From: kor-Chipmunk Date: Mon, 19 Feb 2024 20:20:50 +0900 Subject: [PATCH 4/8] =?UTF-8?q?fix:=20filter=20=EC=88=9C=EC=84=9C=20?= =?UTF-8?q?=EB=B3=80=EA=B2=BD=20&=20Authorization=20=ED=97=A4=EB=8D=94=20n?= =?UTF-8?q?ull=20=EC=98=A4=EB=A5=98=20=ED=95=B4=EA=B2=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../gateway/filter/AuthorizationFilter.java | 5 +-- .../lalala/gateway/filter/LoggingFilter.java | 34 +++++++++++++++++++ .../src/main/resources/application.yml | 17 +++++----- 3 files changed, 46 insertions(+), 10 deletions(-) create mode 100644 src/backend/gateway-server/src/main/java/com/lalala/gateway/filter/LoggingFilter.java diff --git a/src/backend/gateway-server/src/main/java/com/lalala/gateway/filter/AuthorizationFilter.java b/src/backend/gateway-server/src/main/java/com/lalala/gateway/filter/AuthorizationFilter.java index 7fb67730..76a77ec4 100644 --- a/src/backend/gateway-server/src/main/java/com/lalala/gateway/filter/AuthorizationFilter.java +++ b/src/backend/gateway-server/src/main/java/com/lalala/gateway/filter/AuthorizationFilter.java @@ -2,6 +2,7 @@ import java.util.Arrays; +import java.util.List; import org.springframework.cloud.gateway.filter.GatewayFilter; import org.springframework.cloud.gateway.filter.factory.AbstractGatewayFilterFactory; import org.springframework.http.server.reactive.ServerHttpRequest; @@ -28,7 +29,6 @@ public static class Config {} public GatewayFilter apply(Config config) { return (exchange, chain) -> { String uri = exchange.getRequest().getURI().getPath(); - if (isWhiteList(uri)) { return chain.filter(exchange); } @@ -70,7 +70,8 @@ private String extractJWT(ServerWebExchange exchange) { } private boolean isRequestContainsAuthorization(ServerWebExchange exchange) { - return exchange.getRequest().getHeaders().get(AUTHORIZATION_HEADER_NAME).size() == 1; + List authorization = exchange.getRequest().getHeaders().get(AUTHORIZATION_HEADER_NAME); + return authorization != null && !authorization.isEmpty(); } private boolean isWhiteList(String target) { diff --git a/src/backend/gateway-server/src/main/java/com/lalala/gateway/filter/LoggingFilter.java b/src/backend/gateway-server/src/main/java/com/lalala/gateway/filter/LoggingFilter.java new file mode 100644 index 00000000..ad66e920 --- /dev/null +++ b/src/backend/gateway-server/src/main/java/com/lalala/gateway/filter/LoggingFilter.java @@ -0,0 +1,34 @@ +package com.lalala.gateway.filter; + +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; +import org.springframework.cloud.gateway.filter.GatewayFilterChain; +import org.springframework.cloud.gateway.filter.GlobalFilter; +import org.springframework.cloud.gateway.route.Route; +import org.springframework.stereotype.Component; +import org.springframework.web.server.ServerWebExchange; +import reactor.core.publisher.Mono; + +import java.net.URI; +import java.util.Collections; +import java.util.Set; + +import static org.springframework.cloud.gateway.support.ServerWebExchangeUtils.GATEWAY_ORIGINAL_REQUEST_URL_ATTR; +import static org.springframework.cloud.gateway.support.ServerWebExchangeUtils.GATEWAY_REQUEST_URL_ATTR; +import static org.springframework.cloud.gateway.support.ServerWebExchangeUtils.GATEWAY_ROUTE_ATTR; + +@Component +public class LoggingFilter implements GlobalFilter { + Log log = LogFactory.getLog(getClass()); + + @Override + public Mono filter(ServerWebExchange exchange, GatewayFilterChain chain) { + Set uris = exchange.getAttributeOrDefault(GATEWAY_ORIGINAL_REQUEST_URL_ATTR, Collections.emptySet()); + String originalUri = (uris.isEmpty()) ? "Unknown" : uris.iterator().next().toString(); + Route route = exchange.getAttribute(GATEWAY_ROUTE_ATTR); + URI routeUri = exchange.getAttribute(GATEWAY_REQUEST_URL_ATTR); + log.info("Incoming request " + originalUri + " is routed to id: " + route.getId() + + ", uri:" + routeUri); + return chain.filter(exchange); + } +} diff --git a/src/backend/gateway-server/src/main/resources/application.yml b/src/backend/gateway-server/src/main/resources/application.yml index bfa0ef5b..5c207ca4 100644 --- a/src/backend/gateway-server/src/main/resources/application.yml +++ b/src/backend/gateway-server/src/main/resources/application.yml @@ -28,6 +28,15 @@ spring: - POST - DELETE - OPTIONS + + default-filters: + - name: AuthorizationFilter + args: + baseMessage: Gateway Authorization Filter + preLogger: true + postLogger: true + - DedupeResponseHeader=Access-Control-Allow-Origin Access-Control-Allow-Credentials, RETAIN_UNIQUE + routes: - id: ALARM-SERVICE uri: lb://ALARM-SERVER @@ -106,14 +115,6 @@ spring: filters: - RewritePath=/user/?(?.*), /v1/api/$\{segment} - default-filters: - - DedupeResponseHeader=Access-Control-Allow-Origin Access-Control-Allow-Credentials, RETAIN_UNIQUE - - name: AuthorizationFilter - args: - baseMessage: Gateway Authorization Filter - preLogger: true - postLogger: true - websockets: enabled: true From fd66c543ebf45af859f7aedbb521b53af2e8a4f4 Mon Sep 17 00:00:00 2001 From: kor-Chipmunk Date: Mon, 19 Feb 2024 20:21:03 +0900 Subject: [PATCH 5/8] style: styling --- .../gateway/filter/AuthorizationFilter.java | 2 +- .../lalala/gateway/filter/LoggingFilter.java | 25 ++++++++++++------- 2 files changed, 17 insertions(+), 10 deletions(-) diff --git a/src/backend/gateway-server/src/main/java/com/lalala/gateway/filter/AuthorizationFilter.java b/src/backend/gateway-server/src/main/java/com/lalala/gateway/filter/AuthorizationFilter.java index 76a77ec4..3d9081b2 100644 --- a/src/backend/gateway-server/src/main/java/com/lalala/gateway/filter/AuthorizationFilter.java +++ b/src/backend/gateway-server/src/main/java/com/lalala/gateway/filter/AuthorizationFilter.java @@ -1,8 +1,8 @@ package com.lalala.gateway.filter; import java.util.Arrays; - import java.util.List; + import org.springframework.cloud.gateway.filter.GatewayFilter; import org.springframework.cloud.gateway.filter.factory.AbstractGatewayFilterFactory; import org.springframework.http.server.reactive.ServerHttpRequest; diff --git a/src/backend/gateway-server/src/main/java/com/lalala/gateway/filter/LoggingFilter.java b/src/backend/gateway-server/src/main/java/com/lalala/gateway/filter/LoggingFilter.java index ad66e920..7f175f24 100644 --- a/src/backend/gateway-server/src/main/java/com/lalala/gateway/filter/LoggingFilter.java +++ b/src/backend/gateway-server/src/main/java/com/lalala/gateway/filter/LoggingFilter.java @@ -1,17 +1,18 @@ package com.lalala.gateway.filter; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; +import java.net.URI; +import java.util.Collections; +import java.util.Set; + import org.springframework.cloud.gateway.filter.GatewayFilterChain; import org.springframework.cloud.gateway.filter.GlobalFilter; import org.springframework.cloud.gateway.route.Route; import org.springframework.stereotype.Component; import org.springframework.web.server.ServerWebExchange; -import reactor.core.publisher.Mono; -import java.net.URI; -import java.util.Collections; -import java.util.Set; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; +import reactor.core.publisher.Mono; import static org.springframework.cloud.gateway.support.ServerWebExchangeUtils.GATEWAY_ORIGINAL_REQUEST_URL_ATTR; import static org.springframework.cloud.gateway.support.ServerWebExchangeUtils.GATEWAY_REQUEST_URL_ATTR; @@ -23,12 +24,18 @@ public class LoggingFilter implements GlobalFilter { @Override public Mono filter(ServerWebExchange exchange, GatewayFilterChain chain) { - Set uris = exchange.getAttributeOrDefault(GATEWAY_ORIGINAL_REQUEST_URL_ATTR, Collections.emptySet()); + Set uris = + exchange.getAttributeOrDefault(GATEWAY_ORIGINAL_REQUEST_URL_ATTR, Collections.emptySet()); String originalUri = (uris.isEmpty()) ? "Unknown" : uris.iterator().next().toString(); Route route = exchange.getAttribute(GATEWAY_ROUTE_ATTR); URI routeUri = exchange.getAttribute(GATEWAY_REQUEST_URL_ATTR); - log.info("Incoming request " + originalUri + " is routed to id: " + route.getId() - + ", uri:" + routeUri); + log.info( + "Incoming request " + + originalUri + + " is routed to id: " + + route.getId() + + ", uri:" + + routeUri); return chain.filter(exchange); } } From 5aee34efb5ab464b1bd174f0816b21f70ad943c2 Mon Sep 17 00:00:00 2001 From: sua kang Date: Mon, 19 Feb 2024 20:29:15 +0900 Subject: [PATCH 6/8] refactor: add missing field userCount --- .../java/chattingserver/dto/response/JoinedRoomResponseDto.java | 1 + .../src/main/java/chattingserver/service/RoomService.java | 1 + 2 files changed, 2 insertions(+) diff --git a/src/backend/chatting-server/src/main/java/chattingserver/dto/response/JoinedRoomResponseDto.java b/src/backend/chatting-server/src/main/java/chattingserver/dto/response/JoinedRoomResponseDto.java index 38a9b40d..96ffe2c6 100644 --- a/src/backend/chatting-server/src/main/java/chattingserver/dto/response/JoinedRoomResponseDto.java +++ b/src/backend/chatting-server/src/main/java/chattingserver/dto/response/JoinedRoomResponseDto.java @@ -13,6 +13,7 @@ public class JoinedRoomResponseDto { private String roomId; private String roomName; + private long userCount; private String thumbnailImage; private List users; private UserListResponseDto playlistOwner; diff --git a/src/backend/chatting-server/src/main/java/chattingserver/service/RoomService.java b/src/backend/chatting-server/src/main/java/chattingserver/service/RoomService.java index 8c19864b..4f01e218 100644 --- a/src/backend/chatting-server/src/main/java/chattingserver/service/RoomService.java +++ b/src/backend/chatting-server/src/main/java/chattingserver/service/RoomService.java @@ -62,6 +62,7 @@ public List findJoinedRoomsByUid(Long uid) { .roomName(room.getRoomName()) .thumbnailImage(room.getThumbnailImage()) .users(room.getUsers()) + .userCount(room.getUsers().size()) .playlistOwner(entityToResponseDtoConverter.convertUser(room.getPlaylistOwner())) .lastMessage(lastMessage) .build()); From f9ed23d5735d0e179fd52dc09cf7d9d84d39b30e Mon Sep 17 00:00:00 2001 From: kor-Chipmunk Date: Mon, 19 Feb 2024 20:40:15 +0900 Subject: [PATCH 7/8] =?UTF-8?q?fix:=20`gateway-app`=20=EC=9C=BC=EB=A1=9C?= =?UTF-8?q?=20=ED=98=B8=EC=8A=A4=ED=8A=B8=EB=AA=85=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/backend/gateway-server/docker-compose-hub.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/backend/gateway-server/docker-compose-hub.yml b/src/backend/gateway-server/docker-compose-hub.yml index c0be54b2..8fa6c852 100644 --- a/src/backend/gateway-server/docker-compose-hub.yml +++ b/src/backend/gateway-server/docker-compose-hub.yml @@ -3,7 +3,7 @@ services: gateway-app: image: smilegatewannabe/gateway environment: - eureka.instance.hostname: discovery-app + eureka.instance.hostname: gateway-app eureka.client.service-url.defaultZone: http://discovery-app:34100/eureka auth.url: http://auth-app:10000 restart: always From c3229089519553c62c6d907bf0d64f8209587c21 Mon Sep 17 00:00:00 2001 From: kor-Chipmunk Date: Mon, 19 Feb 2024 20:50:35 +0900 Subject: [PATCH 8/8] =?UTF-8?q?infra:=20port=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/resources/application.yml | 2 +- .../chart-server/docker-compose-hub.yml | 2 +- .../chart-server/docker-compose-local.yml | 2 +- .../chatting-server/docker-compose-hub.yml | 4 +++- .../8.5/executionHistory/executionHistory.bin | Bin 915892 -> 1196103 bytes .../executionHistory/executionHistory.lock | Bin 17 -> 17 bytes .../.gradle/8.5/fileHashes/fileHashes.bin | Bin 25997 -> 29647 bytes .../.gradle/8.5/fileHashes/fileHashes.lock | Bin 17 -> 17 bytes .../8.5/fileHashes/resourceHashesCache.bin | Bin 22067 -> 23019 bytes .../buildOutputCleanup.lock | Bin 17 -> 17 bytes .../buildOutputCleanup/outputFiles.bin | Bin 19631 -> 20783 bytes .../feed-server/.gradle/file-system.probe | Bin 8 -> 8 bytes .../src/main/resources/application.yml | 2 +- .../src/main/resources/application.yml | 6 +++--- 14 files changed, 10 insertions(+), 8 deletions(-) diff --git a/src/backend/chart-server/chart-api/src/main/resources/application.yml b/src/backend/chart-server/chart-api/src/main/resources/application.yml index 428e96e5..29d0a11b 100644 --- a/src/backend/chart-server/chart-api/src/main/resources/application.yml +++ b/src/backend/chart-server/chart-api/src/main/resources/application.yml @@ -1,5 +1,5 @@ server: - port: 8200 + port: 26000 spring: application: diff --git a/src/backend/chart-server/docker-compose-hub.yml b/src/backend/chart-server/docker-compose-hub.yml index 2fd06c13..e952cf16 100644 --- a/src/backend/chart-server/docker-compose-hub.yml +++ b/src/backend/chart-server/docker-compose-hub.yml @@ -4,7 +4,7 @@ services: chart-app: image: smilegatewannabe/chart ports: - - 26000:8200 + - 26000:26000 depends_on: - chart-mongo environment: diff --git a/src/backend/chart-server/docker-compose-local.yml b/src/backend/chart-server/docker-compose-local.yml index 8ce49dbd..df1d90fc 100644 --- a/src/backend/chart-server/docker-compose-local.yml +++ b/src/backend/chart-server/docker-compose-local.yml @@ -4,7 +4,7 @@ services: chart-app: build: . ports: - - 26000:8200 + - 26000:26000 depends_on: - chart-mongo environment: diff --git a/src/backend/chatting-server/docker-compose-hub.yml b/src/backend/chatting-server/docker-compose-hub.yml index 55fc99c2..9aef9045 100644 --- a/src/backend/chatting-server/docker-compose-hub.yml +++ b/src/backend/chatting-server/docker-compose-hub.yml @@ -2,7 +2,9 @@ version: '3.9' services: chatting-app: - image: smilegatewannabe/chatting + build: + context: . + dockerfile: Dockerfile restart: always ports: - 18000:18000 diff --git a/src/backend/feed-server/.gradle/8.5/executionHistory/executionHistory.bin b/src/backend/feed-server/.gradle/8.5/executionHistory/executionHistory.bin index 6a4a01aa56f1648182be2732485d5196cf4b390b..8a0d104cfa46f8bf231b4c5c327ec46fc9754907 100644 GIT binary patch delta 22665 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 KLtKn`cK#o@PsT3* delta 2943 zcmcIm3s6&M7QX*Ya+3fFNlbW%@~T)s1+)ZYE#*-K-&$W=iz0!L5X=jbEa0muC|V$( zS3GtD$U{Y>Du{AjbroH=P**5jaH`Deh|Z!G6a__g+||7aYNxil?C#9|cg~%2|8wU2 z=brQZ-~Tsno^x_Av`8#vV%CA`Wf{gLF4H3)tk@MEz2n#GZIkw4n_s;ic*5O* zFLRkJ+q~V{8*k>les|x~!EO5m+dMWqid^8DLbkdFIlOV8bDU~jwm!kdIp_ln%POX& zz$%vCn9@>`F@?g^k#!!`BnyAnuY87hTG`-ZM(&&_FBgtUw zhKt=1Ox*h(d>6-A0)i4k0*jq^1Vpj<3&{31Z?db0hX&qS$HV=-OfhWn!Np|zwN<44 z3X{~exHZggS?cO-)Txxop^DHfX|gm`sgz5DGeT5p`V3w0>(!X_YMCOKlw%*-pnn?9 zp!UAcb3!0UwHr&t7cvWw`$_Zis*a(G;SR0=!Pb?MLX6KElv9nNf%IJCEu;>_F|BsHLHUxAIUNEH&t${pW zT02^YvSpIe>D>p;Oj+0IVU{e-Dr>UjS<`sRVqgN_HI}gD+b@XE*85*GEgC!1ni=B@ z8Uqd+X)#%4R19DQnKt`6;z50xT?9myFoM9B-Yn3hA33RFA+9uRst*am1A8A5j@cH0?yh@qX_M>!jP37@a;#Rii`j-PZyiXrJJ? zhuYbOXq-yCc@d-^LnzG6R3;2x&QN zidvM#sP~|%&vKeuDZeinDcz&@lVL3d`{nv-aFIZ zhki4+ULYrNrbfFj>R=|X$GyDi8PpYWYefT#?Xw*eH65QD!h&xt+S!asA-;m`3`@;i zBk(HOLU1oEegBTUYk=&|4m&b+sA5TLFhJnE!2`+2e?JD#G;k^b1G-&DZO@8{n=pjo>PgA zKsm{Ewi-p`k!7|zJt`sW;M-!ZC;i*^9<+3fd!i59UV43P$haTQphie5rc2Xb%-tq> zy0vFX%DqkV^fTY{GM^Bpp$b3;*>3Q-6|vyOb9SLfAD`B|=B(sOnwNR4R{xcePR$GG z8XvR1z8+@p6l|WnZ(=X5ON{%bQaQHy{v%lPH}=H;3jPyYe1r=vqtPMiA}@A3Q@l+q z2_Kz?#p6YhWMq#AG_7MX!99?s&l{^y@oHo8nXsr5XZg!SjJHfL~JK{P4<)WK*sD;l+NZApfc9;!Z-aB!m4of diff --git a/src/backend/feed-server/.gradle/8.5/executionHistory/executionHistory.lock b/src/backend/feed-server/.gradle/8.5/executionHistory/executionHistory.lock index 39fa509543a2a7281fe3743b6bf2891ec3d18edd..175b7b47389c2719a406c07ef552aab81efcbb77 100644 GIT binary patch literal 17 UcmZRMz04c&ezA)U0|Zn7051{*B>(^b literal 17 UcmZRMz04c&ezA)U0|W#D050hR`~Uy| diff --git a/src/backend/feed-server/.gradle/8.5/fileHashes/fileHashes.bin b/src/backend/feed-server/.gradle/8.5/fileHashes/fileHashes.bin index 30fac76dd0b1f2d3f72e2e8847b06e24c5890bc0..19a0adc31deac90016c3cdd160ffa81aca83d8c9 100644 GIT binary patch delta 4792 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 Fw!c>#6TJWc diff --git a/src/backend/feed-server/.gradle/8.5/fileHashes/fileHashes.lock b/src/backend/feed-server/.gradle/8.5/fileHashes/fileHashes.lock index 122919f5033df150420549b5c5e91fc705f96339..61183a013ca72868825401ab3a264b9fed343846 100644 GIT binary patch literal 17 VcmZQxVBvRCNi^*m0~j!w0RSpM1D*f? literal 17 VcmZQxVBvRCNi^*m0~j!F0stzy1Q`GT diff --git a/src/backend/feed-server/.gradle/8.5/fileHashes/resourceHashesCache.bin b/src/backend/feed-server/.gradle/8.5/fileHashes/resourceHashesCache.bin index 2cfa5817919643aa621a12289ab248006ca980e7..246c365a81d4a68af6222c77fb5a00bd9cb6d097 100644 GIT binary patch delta 1548 zcmdnIhVk`g#tkMChOI4|A22M4_;-l`48q_3hk~vw+fY8%*wYa4FqrWF$)*w>0u!#x z`ad^6>or6&V&~*i2@8SAd|J8pw|{qn>M)+XR3boN=0Y~p=eDL^P?f=x-%40$%u$sN zHcvPZ4i)5w89wL8iZ>kR`rkmr!&h#WmAt^Hahhwn)7^U|Q=y{mFx96g&9V>E`||@L z9@#qisZ=Jv3-9m3IrjgdVkalNN-GH5oc#88*4;g^5Wxt;$+6NF0uM}Q+T@)SeGgSB zKe<=hl7GFvo|T@n6+|p7bn;%H!dLzIAM`wzdO&smo%~jMBfs~&7j{*ATu{x)lc&l& z5D>7+os+TV#xJPC(#g5976M||uivyOHM|Zr^6uohvVr_kCt@!+?NWj2UOxG$Y=D3Y zn@>ipPA>~o&~dV^+y()ib2$cV>lVC#2!=aPzAC36V3>48=eN1JKh((b$#3Nz@_VKK zRB97$fhtU$d{lmhfcvUz_pBbz4}}UUP7YNF&KiH~ zLKUB$JXgVzpSfD4u1&63`X~}4h^B(EcT1Xsi{lTYoi<_F{1G6Rp{WoF_xk^)aIJZN zp7vvJ&xRRr74;x1Kv>|?p7`7LhsE=^#wJF}xz$F(mB3Z}V_E%W`{6(%wzEvkjtU~6 zAVjmq$$M9=)m3+%^+z|Kv;8M<4pYU>nuq6)?%v2b=ufCLxcan=pw$VF1fc@{JVH&yP(T@zE2q&UfU$?ciDt#Mo^1Q zqe0`U`ZKFGy|cd=R`~%_Nw;Bb`J#-z$4*S5Yr0Ft6vfhs_d8$&2CY($%%@SmL*@Z>ra%35*k; zsM+)S|2;ej-4H>6weL!8BkzP*1AJU;yV zLd~*uQHGNr`kB--E&p#9wKA0D$0zN>i@H1XFtzy!9pzg;uQx@3Ipy5D)gP~7s;HUy zviQ*}Hh;}0vohbZDon&w;dR7fS3}^Q8r_XrJPWSvtAneM1+pM%d}{F-%WpP!f;aMZ M-EOw7xCT-J0C)u7?f?J) delta 127 zcmaF8nQ`+P#tkMCjG2>DB|Ih{l`xphE9o&gSJGhfS;-TOlaER#PPUT~pPVaWFnOzt z;pBfZ`jcH{S59V=yFU4=oWW#UdC$r7xDMc diff --git a/src/backend/feed-server/.gradle/buildOutputCleanup/buildOutputCleanup.lock b/src/backend/feed-server/.gradle/buildOutputCleanup/buildOutputCleanup.lock index 1489470d37c3aabc8c1816af2f4d1fc05c08ef4c..27ce7bf09d2d641485a4bcf0423e358f21d5414b 100644 GIT binary patch literal 17 UcmZQJ&3LI$w|Y(^0|Z1Qcd9)DJM%U1+@_N5oNot4Aiob~ z3ux-nLi`80elJ-7J=+DyOhBA0nwRfM3+*<=;1#23a@62=(&%#77za)(u}_)Oe8s%bnsi(=yd# z?Ccd}7Dn<{)rC$qEVn~JI+_)-@|LbB`%OXn9HAhL6tqfOEJdz;=fDr5Kv4jH&-@~N z8;GM;AcM$*zxs(*?-HB@xi8VjB9^+(&GorAK3ay62}T_vTHc?SnU)#X?hUw>Od8PV zE4|O8Nuj}r#zjhMaQK)vZ@Ta|2uC7UF-?u6a@>DkJ`sgcoq~MCdie~R7#PY7$bsZT zQu~Z^vs0&8fYU})p=>cN|GVV;n6_t60S-spCE>ZoBQ1CMKH=d1psV5le&Jrd*;923 z8=H+DJU;@bbmz13%BHOt)tAvzF-xu1S~ySa8bug2xyVmKQ&ikqOW?KU0jTUoj6`X4 zZfRr})@_`G?F^ak^7g&hW!+na&~Salixr!T-f>C+Un1^Welp9gDRc=tbDy}Vb?lni zbijt4Z6@yS@@Lx(?NO8^aWZ;ra^P4FM_+(WXOi)a>)2g(;08ejaT2Rs@LOX!%Os*Xw7xr1&PnF10H?o;)f zW!ZVy)h6P*cW}*y?;JkCuJK>-cvfN?O8EtP8qlmnNk#mTZhftnf}5h|AunkpUo2C+ zd2}!V3Z{@jsx-!qEFOQDnY0QcTSHoPPS+;?2*crjulUMFuY6@H3~tozrYvtge9tew^D22x&QsE#EUFCDs|=I_;;YIMJpZA9fr0hsM#UfE8x0hM KHamLcu>b&4-#e86 diff --git a/src/backend/feed-server/.gradle/file-system.probe b/src/backend/feed-server/.gradle/file-system.probe index 35614d8cfe3e88ef8736f5cc3fae742b721ac848..aea7c03ebc200b38f09f153f8b482b587d74865a 100644 GIT binary patch literal 8 PcmZQzVC+3;EXn}@2A%<+ literal 8 PcmZQzVC-G^_+cLa3QPln diff --git a/src/backend/feed-server/src/main/resources/application.yml b/src/backend/feed-server/src/main/resources/application.yml index ef8c5071..145335f2 100644 --- a/src/backend/feed-server/src/main/resources/application.yml +++ b/src/backend/feed-server/src/main/resources/application.yml @@ -1,5 +1,5 @@ server: - port: 8002 + port: 14000 spring: application: diff --git a/src/backend/playlist-server/src/main/resources/application.yml b/src/backend/playlist-server/src/main/resources/application.yml index 7cfa11bc..12d5025b 100644 --- a/src/backend/playlist-server/src/main/resources/application.yml +++ b/src/backend/playlist-server/src/main/resources/application.yml @@ -1,3 +1,6 @@ +server: + port: 16000 + spring: application: name: playlist-server @@ -18,9 +21,6 @@ spring: kafka: bootstrap-servers: localhost:40000,localhost:40001,localhost:40002 -server: - port: 16000 - eureka: instance: hostname: localhost