diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 26d8c32..ff85d09 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -4,11 +4,11 @@ on: pull_request: branches: - main - - develop + - dev push: branches: - main - - develop + - dev permissions: contents: read diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 5e5ef1e..ff29774 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -4,6 +4,7 @@ on: push: branches: - main + - dev workflow_dispatch: permissions: diff --git a/src/main/java/com/jobdri/jobdri_api/domain/analysis/service/AnalysisAiClient.java b/src/main/java/com/jobdri/jobdri_api/domain/analysis/service/AnalysisAiClient.java index dffff39..9f8e4ed 100644 --- a/src/main/java/com/jobdri/jobdri_api/domain/analysis/service/AnalysisAiClient.java +++ b/src/main/java/com/jobdri/jobdri_api/domain/analysis/service/AnalysisAiClient.java @@ -161,7 +161,7 @@ public class AnalysisAiClient { - 반드시 한국어 평서문으로 작성한다. - "추가하세요", "보완하세요", "수정해주세요", "필요합니다" 같은 지시문을 사용하지 않는다. - 사용자가 언급하지 않은 경험, 기술, 도구명, 인원수, 금액, 성과 수치를 임의로 만들지 않는다. - - 수치가 필요하지만 원문에 없다면 N건, X%, 약 N시간 같은 빈칸 표현을 사용한다. + - 수치가 필요하지만 원문에 없다면 N건, X%%, 약 N시간 같은 빈칸 표현을 사용한다. - 원래 경험과 맥락을 최대한 유지한다. - 가능하면 행동, 역할, 결과가 드러나도록 개선한다. - 너무 길거나 과도하게 화려한 문장으로 만들지 않는다. @@ -278,7 +278,7 @@ private String buildPrompt( - 원문에 없는 경험, 기술, 도구명, 인원수, 금액, 성과 수치를 만들지 않았는지 확인한다. - fabricated를 단순 근거 부족에 사용하지 않았는지 확인한다. - jobFit, impact, completeness는 0~100 정수로 출력한다. - - 총점 score는 서버가 jobFit 50%, impact 30%, completeness 20%로 계산하므로 출력하지 않는다. + - 총점 score는 서버가 jobFit 50%%, impact 30%%, completeness 20%%로 계산하므로 출력하지 않는다. """.formatted( OUTPUT_SCHEMA, EVALUATION_CRITERIA, diff --git a/src/test/java/com/jobdri/jobdri_api/global/mq/service/RabbitPublishSupportIntegrationTest.java b/src/test/java/com/jobdri/jobdri_api/global/mq/service/RabbitPublishSupportIntegrationTest.java index ed55bdf..e40bc56 100644 --- a/src/test/java/com/jobdri/jobdri_api/global/mq/service/RabbitPublishSupportIntegrationTest.java +++ b/src/test/java/com/jobdri/jobdri_api/global/mq/service/RabbitPublishSupportIntegrationTest.java @@ -18,8 +18,13 @@ import org.springframework.test.context.ActiveProfiles; import org.springframework.test.context.TestPropertySource; +import java.io.IOException; +import java.net.InetSocketAddress; +import java.net.Socket; + import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.api.Assertions.assertThatThrownBy; +import static org.junit.jupiter.api.Assumptions.assumeTrue; @SpringBootTest @ActiveProfiles("test") @@ -33,6 +38,9 @@ "spring.rabbitmq.template.mandatory=true" }) class RabbitPublishSupportIntegrationTest { + private static final String RABBITMQ_HOST = "localhost"; + private static final int RABBITMQ_PORT = 5672; + private static final int RABBITMQ_CONNECT_TIMEOUT_MILLIS = 500; @Autowired private RabbitPublishSupport rabbitPublishSupport; @@ -54,9 +62,25 @@ class RabbitPublishSupportIntegrationTest { @BeforeEach void purgeQueue() { + assumeTrue( + isRabbitMqAvailable(), + "RabbitMQ is not available on localhost:5672. Skipping RabbitMQ integration test." + ); rabbitAdmin.purgeQueue(queueName, true); } + private boolean isRabbitMqAvailable() { + try (Socket socket = new Socket()) { + socket.connect( + new InetSocketAddress(RABBITMQ_HOST, RABBITMQ_PORT), + RABBITMQ_CONNECT_TIMEOUT_MILLIS + ); + return true; + } catch (IOException e) { + return false; + } + } + @Test @DisplayName("RabbitMQ publisher confirm이 오면 메시지가 큐에 적재된다") void publishStoresMessageInQueue() {