백엔드 Docker 빌드 실패로 배포가 막히던 문제를 수정한다.

테스트 컴파일 오류(RsiThresholdCrossSignalTest)와 -DskipTests 한계를 해결해
StrategyConditionThresholdNormalizer가 실제 서버 이미지에 포함되도록 한다.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
Macbook
2026-06-18 00:30:10 +09:00
parent ea8576d756
commit bd6094f71f
3 changed files with 17 additions and 9 deletions
+1 -1
View File
@@ -22,7 +22,7 @@ RUN mvn -f backend/pom.xml dependency:go-offline -q 2>/dev/null || true
# 소스 빌드
COPY backend/src ./backend/src
RUN mvn -f backend/pom.xml package -DskipTests -q
RUN mvn -f backend/pom.xml package -Dmaven.test.skip=true -q
# ── 2단계: 실행 ──────────────────────────────────────────────────────────────
FROM eclipse-temurin:21-jre-alpine AS production
@@ -132,11 +132,13 @@ class RsiThresholdCrossSignalTest {
}
private static BarSeries buildOscillatingSeries(int count) {
BaseBarSeriesBuilder builder = new BaseBarSeriesBuilder()
Duration period = Duration.ofMinutes(3);
BarSeries s = new BaseBarSeriesBuilder()
.withName("test")
.withBarBuilderFactory(new TimeBarBuilderFactory(Duration.ofMinutes(3)))
.withNumFactory(DoubleNumFactory.getInstance());
BarSeries s = builder.build();
.withBarBuilderFactory(new TimeBarBuilderFactory())
.withNumFactory(DoubleNumFactory.getInstance())
.build();
TimeBarBuilderFactory factory = new TimeBarBuilderFactory();
Instant t = Instant.parse("2024-01-01T00:00:00Z");
double price = 100;
for (int i = 0; i < count; i++) {
@@ -146,8 +148,13 @@ class RsiThresholdCrossSignalTest {
double h = price + 1.5;
double l = price - 1.5;
double c = price;
s.addBar(t, o, h, l, c, 1000);
t = t.plus(Duration.ofMinutes(3));
factory.createBarBuilder(s)
.timePeriod(period)
.endTime(t.plus(period))
.openPrice(o).highPrice(h).lowPrice(l).closePrice(c)
.volume(1000)
.add();
t = t.plus(period);
}
return s;
}